Pong_Code.elf: file format elf32-littlenios2 Pong_Code.elf architecture: nios2:r1, flags 0x00000112: EXEC_P, HAS_SYMS, D_PAGED start address 0x00040230 Program Header: LOAD off 0x00001000 vaddr 0x00040000 paddr 0x00040000 align 2**12 filesz 0x00000020 memsz 0x00000020 flags r-x LOAD off 0x00001020 vaddr 0x00040020 paddr 0x00040020 align 2**12 filesz 0x0001263c memsz 0x0001263c flags r-x LOAD off 0x0001365c vaddr 0x0005265c paddr 0x00054270 align 2**12 filesz 0x00001c14 memsz 0x00001c14 flags rw- LOAD off 0x00015e84 vaddr 0x00055e84 paddr 0x00055e84 align 2**12 filesz 0x00000000 memsz 0x000001a0 flags rw- Sections: Idx Name Size VMA LMA File off Algn 0 .entry 00000020 00040000 00040000 00001000 2**5 CONTENTS, ALLOC, LOAD, READONLY, CODE 1 .exceptions 00000210 00040020 00040020 00001020 2**2 CONTENTS, ALLOC, LOAD, READONLY, CODE 2 .text 00011e08 00040230 00040230 00001230 2**2 CONTENTS, ALLOC, LOAD, READONLY, CODE 3 .rodata 00000624 00052038 00052038 00013038 2**2 CONTENTS, ALLOC, LOAD, READONLY, DATA 4 .rwdata 00001c14 0005265c 00054270 0001365c 2**2 CONTENTS, ALLOC, LOAD, DATA, SMALL_DATA 5 .bss 000001a0 00055e84 00055e84 00015e84 2**2 ALLOC, SMALL_DATA 6 .onchip_memory2 00000000 00056024 00056024 00015270 2**0 CONTENTS 7 .comment 00000023 00000000 00000000 00015270 2**0 CONTENTS, READONLY 8 .debug_aranges 00001090 00000000 00000000 00015298 2**3 CONTENTS, READONLY, DEBUGGING 9 .debug_info 00027b83 00000000 00000000 00016328 2**0 CONTENTS, READONLY, DEBUGGING 10 .debug_abbrev 0000a41f 00000000 00000000 0003deab 2**0 CONTENTS, READONLY, DEBUGGING 11 .debug_line 0000cac8 00000000 00000000 000482ca 2**0 CONTENTS, READONLY, DEBUGGING 12 .debug_frame 000025f0 00000000 00000000 00054d94 2**2 CONTENTS, READONLY, DEBUGGING 13 .debug_str 000040a7 00000000 00000000 00057384 2**0 CONTENTS, READONLY, DEBUGGING 14 .debug_loc 000187ec 00000000 00000000 0005b42b 2**0 CONTENTS, READONLY, DEBUGGING 15 .debug_alt_sim_info 00000040 00000000 00000000 00073c18 2**2 CONTENTS, READONLY, DEBUGGING 16 .debug_ranges 00001be8 00000000 00000000 00073c58 2**3 CONTENTS, READONLY, DEBUGGING 17 .thread_model 00000003 00000000 00000000 00078ebe 2**0 CONTENTS, READONLY 18 .cpu 00000005 00000000 00000000 00078ec1 2**0 CONTENTS, READONLY 19 .qsys 00000001 00000000 00000000 00078ec6 2**0 CONTENTS, READONLY 20 .simulation_enabled 00000001 00000000 00000000 00078ec7 2**0 CONTENTS, READONLY 21 .stderr_dev 00000009 00000000 00000000 00078ec8 2**0 CONTENTS, READONLY 22 .stdin_dev 00000009 00000000 00000000 00078ed1 2**0 CONTENTS, READONLY 23 .stdout_dev 00000009 00000000 00000000 00078eda 2**0 CONTENTS, READONLY 24 .sopc_system_name 00000008 00000000 00000000 00078ee3 2**0 CONTENTS, READONLY 25 .quartus_project_dir 0000001d 00000000 00000000 00078eeb 2**0 CONTENTS, READONLY 26 .jdi 00004802 00000000 00000000 00078f08 2**0 CONTENTS, READONLY 27 .sopcinfo 0004849f 00000000 00000000 0007d70a 2**0 CONTENTS, READONLY SYMBOL TABLE: 00040000 l d .entry 00000000 .entry 00040020 l d .exceptions 00000000 .exceptions 00040230 l d .text 00000000 .text 00052038 l d .rodata 00000000 .rodata 0005265c l d .rwdata 00000000 .rwdata 00055e84 l d .bss 00000000 .bss 00056024 l d .onchip_memory2 00000000 .onchip_memory2 00000000 l d .comment 00000000 .comment 00000000 l d .debug_aranges 00000000 .debug_aranges 00000000 l d .debug_info 00000000 .debug_info 00000000 l d .debug_abbrev 00000000 .debug_abbrev 00000000 l d .debug_line 00000000 .debug_line 00000000 l d .debug_frame 00000000 .debug_frame 00000000 l d .debug_str 00000000 .debug_str 00000000 l d .debug_loc 00000000 .debug_loc 00000000 l d .debug_alt_sim_info 00000000 .debug_alt_sim_info 00000000 l d .debug_ranges 00000000 .debug_ranges 00000000 l df *ABS* 00000000 ../Pong_Code_bsp//obj/HAL/src/crt0.o 00040268 l .text 00000000 alt_after_alt_main 00000000 l df *ABS* 00000000 alt_irq_handler.c 00000000 l df *ABS* 00000000 alt_instruction_exception_entry.c 00000000 l df *ABS* 00000000 specs.cpp 00000000 l df *ABS* 00000000 Main.c 00000000 l df *ABS* 00000000 specs.cpp 00000000 l df *ABS* 00000000 s_round.c 00000000 l df *ABS* 00000000 eqsf2.c 00000000 l df *ABS* 00000000 gesf2.c 00000000 l df *ABS* 00000000 lesf2.c 00000000 l df *ABS* 00000000 floatsisf.c 00000000 l df *ABS* 00000000 adddf3.c 00000000 l df *ABS* 00000000 fixdfsi.c 00000000 l df *ABS* 00000000 floatsidf.c 00000000 l df *ABS* 00000000 extendsfdf2.c 00000000 l df *ABS* 00000000 libgcc2.c 00000000 l df *ABS* 00000000 libgcc2.c 00000000 l df *ABS* 00000000 getc.c 00000000 l df *ABS* 00000000 impure.c 0005265c l O .rwdata 00000424 impure_data 00000000 l df *ABS* 00000000 printf.c 00000000 l df *ABS* 00000000 putchar.c 00000000 l df *ABS* 00000000 rget.c 00000000 l df *ABS* 00000000 vfprintf.c 0005221e l O .rodata 00000010 zeroes.4404 00044464 l F .text 000000bc __sbprintf 0005222e l O .rodata 00000010 blanks.4403 00000000 l df *ABS* 00000000 wsetup.c 00000000 l df *ABS* 00000000 dtoa.c 00044674 l F .text 00000228 quorem 00000000 l df *ABS* 00000000 fflush.c 00000000 l df *ABS* 00000000 findfp.c 000461cc l F .text 00000008 __fp_unlock 000461e0 l F .text 0000019c __sinit.part.1 0004637c l F .text 00000008 __fp_lock 00000000 l df *ABS* 00000000 mallocr.c 00000000 l df *ABS* 00000000 fwalk.c 00000000 l df *ABS* 00000000 locale.c 00052aa0 l O .rwdata 00000020 lc_ctype_charset 00052a80 l O .rwdata 00000020 lc_message_charset 00052ac0 l O .rwdata 00000038 lconv 00000000 l df *ABS* 00000000 makebuf.c 00000000 l df *ABS* 00000000 mallocr.c 00000000 l df *ABS* 00000000 memchr.c 00000000 l df *ABS* 00000000 memcpy.c 00000000 l df *ABS* 00000000 memset.c 00000000 l df *ABS* 00000000 mprec.c 0005225c l O .rodata 0000000c p05.2768 00000000 l df *ABS* 00000000 putc.c 00000000 l df *ABS* 00000000 refill.c 00048b50 l F .text 0000001c lflush 00000000 l df *ABS* 00000000 s_fpclassify.c 00000000 l df *ABS* 00000000 sbrkr.c 00000000 l df *ABS* 00000000 stdio.c 00000000 l df *ABS* 00000000 strcmp.c 00000000 l df *ABS* 00000000 strlen.c 00000000 l df *ABS* 00000000 vfprintf.c 000490b8 l F .text 000000fc __sprint_r.part.0 00052380 l O .rodata 00000010 zeroes.4349 0004a6f4 l F .text 000000bc __sbprintf 00052390 l O .rodata 00000010 blanks.4348 00000000 l df *ABS* 00000000 wbuf.c 00000000 l df *ABS* 00000000 writer.c 00000000 l df *ABS* 00000000 closer.c 00000000 l df *ABS* 00000000 mallocr.c 00000000 l df *ABS* 00000000 fclose.c 00000000 l df *ABS* 00000000 fputwc.c 00000000 l df *ABS* 00000000 fstatr.c 00000000 l df *ABS* 00000000 fvwrite.c 00000000 l df *ABS* 00000000 int_errno.c 00000000 l df *ABS* 00000000 isattyr.c 00000000 l df *ABS* 00000000 lseekr.c 00000000 l df *ABS* 00000000 memmove.c 00000000 l df *ABS* 00000000 readr.c 00000000 l df *ABS* 00000000 mallocr.c 00000000 l df *ABS* 00000000 wcrtomb.c 00000000 l df *ABS* 00000000 wctomb_r.c 00000000 l df *ABS* 00000000 libgcc2.c 00000000 l df *ABS* 00000000 libgcc2.c 00000000 l df *ABS* 00000000 lib2-divmod.c 00000000 l df *ABS* 00000000 lib2-mul.c 00000000 l df *ABS* 00000000 divdf3.c 00000000 l df *ABS* 00000000 eqdf2.c 00000000 l df *ABS* 00000000 gedf2.c 00000000 l df *ABS* 00000000 ledf2.c 00000000 l df *ABS* 00000000 muldf3.c 00000000 l df *ABS* 00000000 subdf3.c 00000000 l df *ABS* 00000000 floatunsidf.c 00000000 l df *ABS* 00000000 alt_close.c 0004e858 l F .text 0000003c alt_get_errno 00000000 l df *ABS* 00000000 alt_dev.c 0004e96c l F .text 0000002c alt_dev_null_write 00000000 l df *ABS* 00000000 alt_errno.c 00000000 l df *ABS* 00000000 alt_fstat.c 0004e998 l F .text 0000003c alt_get_errno 00000000 l df *ABS* 00000000 alt_isatty.c 0004ea8c l F .text 0000003c alt_get_errno 00000000 l df *ABS* 00000000 alt_load.c 0004eb74 l F .text 00000068 alt_load_section 00000000 l df *ABS* 00000000 alt_lseek.c 0004ec60 l F .text 0000003c alt_get_errno 00000000 l df *ABS* 00000000 alt_main.c 00000000 l df *ABS* 00000000 alt_malloc_lock.c 00000000 l df *ABS* 00000000 alt_read.c 0004ee3c l F .text 0000003c alt_get_errno 00000000 l df *ABS* 00000000 alt_release_fd.c 00000000 l df *ABS* 00000000 alt_sbrk.c 00054258 l O .rwdata 00000004 heap_end 00000000 l df *ABS* 00000000 alt_write.c 0004f0b0 l F .text 0000003c alt_get_errno 00000000 l df *ABS* 00000000 alt_sys_init.c 0004f1ec l F .text 00000034 alt_dev_reg 000530a8 l O .rwdata 00001060 jtag_uart 00054108 l O .rwdata 00000120 lcd_16207 00000000 l df *ABS* 00000000 altera_avalon_jtag_uart_fd.c 00000000 l df *ABS* 00000000 altera_avalon_jtag_uart_init.c 0004f4dc l F .text 0000020c altera_avalon_jtag_uart_irq 0004f6e8 l F .text 000000a0 altera_avalon_jtag_uart_timeout 00000000 l df *ABS* 00000000 altera_avalon_jtag_uart_ioctl.c 00000000 l df *ABS* 00000000 altera_avalon_jtag_uart_read.c 00000000 l df *ABS* 00000000 altera_avalon_jtag_uart_write.c 00000000 l df *ABS* 00000000 altera_avalon_lcd_16207.c 0005425c l O .rwdata 00000004 colstart 0004fd20 l F .text 000000b8 lcd_write_command 0004fdd8 l F .text 000000d8 lcd_write_data 0004feb0 l F .text 000000e8 lcd_clear_screen 0004ff98 l F .text 00000228 lcd_repaint_screen 000501c0 l F .text 000000e8 lcd_scroll_up 000502a8 l F .text 000002c4 lcd_handle_escape 00050a8c l F .text 000000ac alt_lcd_16207_timeout 00000000 l df *ABS* 00000000 altera_avalon_lcd_16207_fd.c 00000000 l df *ABS* 00000000 alt_alarm_start.c 00000000 l df *ABS* 00000000 alt_dcache_flush_all.c 00000000 l df *ABS* 00000000 alt_dev_llist_insert.c 00050e18 l F .text 0000003c alt_get_errno 00000000 l df *ABS* 00000000 alt_do_ctors.c 00000000 l df *ABS* 00000000 alt_do_dtors.c 00000000 l df *ABS* 00000000 alt_icache_flush_all.c 00000000 l df *ABS* 00000000 alt_iic.c 00000000 l df *ABS* 00000000 alt_iic_isr_register.c 00000000 l df *ABS* 00000000 alt_io_redirect.c 00051278 l F .text 000000e4 alt_open_fd 00000000 l df *ABS* 00000000 alt_irq_vars.c 00000000 l df *ABS* 00000000 alt_open.c 000513d8 l F .text 0000003c alt_get_errno 00051414 l F .text 000000ec alt_file_locked 00000000 l df *ABS* 00000000 alt_tick.c 00000000 l df *ABS* 00000000 alt_usleep.c 00000000 l df *ABS* 00000000 altera_nios2_gen2_irq.c 00000000 l df *ABS* 00000000 alt_busy_sleep.c 00000000 l df *ABS* 00000000 alt_find_dev.c 00000000 l df *ABS* 00000000 alt_find_file.c 00000000 l df *ABS* 00000000 alt_get_fd.c 00000000 l df *ABS* 00000000 atexit.c 00000000 l df *ABS* 00000000 ctype_.c 000524dc l O .rodata 00000180 _ctype_b 00000000 l df *ABS* 00000000 exit.c 00000000 l df *ABS* 00000000 memcmp.c 00000000 l df *ABS* 00000000 __atexit.c 00000000 l df *ABS* 00000000 __call_atexit.c 00000000 l df *ABS* 00000000 alt_exit.c 00055ec8 g O .bss 00000004 alt_instruction_exception_handler 000420cc g F .text 00000018 putchar 00048870 g F .text 00000074 _mprec_log10 0004895c g F .text 0000008c __any_on 0004b2c8 g F .text 00000054 _isatty_r 00052268 g O .rodata 00000028 __mprec_tinytens 0004ed78 g F .text 0000007c alt_main 00055f24 g O .bss 00000100 alt_irq 0004b31c g F .text 00000060 _lseek_r 00054270 g *ABS* 00000000 __flash_rwdata_start 0004d3f0 g F .text 00000088 .hidden __eqdf2 00056024 g *ABS* 00000000 __alt_heap_start 00042088 g F .text 0000003c printf 0004ba9c g F .text 0000009c _wcrtomb_r 00048ee0 g F .text 0000005c __sseek 0004652c g F .text 00000010 __sinit 0004a7b0 g F .text 00000140 __swbuf_r 00046b38 g F .text 0000007c _setlocale_r 00046384 g F .text 00000078 __sfmoreglue 0004ee18 g F .text 00000024 __malloc_unlock 00040fc4 g F .text 00000100 round 0004b37c g F .text 0000015c memmove 00046514 g F .text 00000018 _cleanup 00047930 g F .text 000000a8 _Balloc 0004d478 g F .text 000000dc .hidden __gtdf2 00051830 g F .text 00000024 altera_nios2_gen2_irq_init 00040000 g F .entry 0000000c __reset 00040020 g *ABS* 00000000 __flash_exceptions_start 0004ada4 g F .text 0000005c _fstat_r 00055eac g O .bss 00000004 errno 00042158 g F .text 00000014 __srget 00048e5c g F .text 00000008 __seofread 00055eb4 g O .bss 00000004 alt_argv 0005c228 g *ABS* 00000000 _gp 00051800 g F .text 00000030 usleep 00040514 g F .text 00000968 game 00052f28 g O .rwdata 00000180 alt_fd_list 00041f60 g F .text 00000070 _getc_r 00041fd0 g F .text 00000088 getc 000420c4 g F .text 00000008 _putchar_r 000519ac g F .text 00000090 alt_find_dev 000476c0 g F .text 00000148 memcpy 000461d4 g F .text 0000000c _cleanup_r 00041d10 g F .text 000000dc .hidden __floatsidf 0005135c g F .text 0000007c alt_io_redirect 0004d554 g F .text 000000f4 .hidden __ltdf2 00052038 g *ABS* 00000000 __DTOR_END__ 00051c08 g F .text 0000009c alt_exception_cause_generated_bad_addr 00048d40 g F .text 00000074 __fpclassifyd 000487cc g F .text 000000a4 __ratio 0004a6d8 g F .text 0000001c __vfiprintf_internal 00055ef4 g O .bss 00000020 screen 0004f8e0 g F .text 0000021c altera_avalon_jtag_uart_read 00042058 g F .text 00000030 _printf_r 0004c93c g F .text 00000064 .hidden __udivsi3 0004eac8 g F .text 000000ac isatty 000522b8 g O .rodata 000000c8 __mprec_tens 00046bb4 g F .text 0000000c __locale_charset 000411f8 g F .text 000000c8 .hidden __lesf2 00055ea8 g O .bss 00000004 __malloc_top_pad 00054230 g O .rwdata 00000004 __mb_cur_max 00046be4 g F .text 0000000c _localeconv_r 0004049c g F .text 00000078 reset_pos 0004ae00 g F .text 000004c8 __sfvwrite_r 00047d64 g F .text 0000003c __i2b 00048db4 g F .text 00000054 _sbrk_r 0004b4d8 g F .text 00000060 _read_r 000403bc g F .text 00000070 set_pixel 00054250 g O .rwdata 00000004 alt_max_fd 0004aa98 g F .text 000000f0 _fclose_r 0004619c g F .text 00000030 fflush 00055ea4 g O .bss 00000004 __malloc_max_sbrked_mem 00041dec g F .text 00000110 .hidden __extendsfdf2 000413e4 g F .text 000008ac .hidden __adddf3 000410c4 g F .text 00000078 .hidden __nesf2 00048574 g F .text 0000010c __b2d 0004c280 g F .text 000005c4 .hidden __umoddi3 0004ec9c g F .text 000000dc lseek 00054228 g O .rwdata 00000004 _global_impure_ptr 0004b538 g F .text 00000564 _realloc_r 00056024 g *ABS* 00000000 __bss_end 00051188 g F .text 000000f0 alt_iic_isr_register 000516f8 g F .text 00000108 alt_tick 0004bc84 g F .text 000005fc .hidden __udivdi3 0004ad00 g F .text 00000024 _fputwc_r 00052290 g O .rodata 00000028 __mprec_bigtens 00047b48 g F .text 00000104 __s2b 0004e7b0 g F .text 000000a8 .hidden __floatunsidf 000482b4 g F .text 00000060 __mcmp 0004654c g F .text 00000018 __fp_lock_all 0005113c g F .text 0000004c alt_ic_irq_enabled 0005165c g F .text 0000009c alt_alarm_stop 00055ebc g O .bss 00000004 alt_irq_active 000400fc g F .exceptions 000000d4 alt_irq_handler 00052f00 g O .rwdata 00000028 alt_dev_null 00050df8 g F .text 00000020 alt_dcache_flush_all 00047c4c g F .text 00000068 __hi0bits 00041c90 g F .text 00000080 .hidden __fixdfsi 00054270 g *ABS* 00000000 __ram_rwdata_end 00054248 g O .rwdata 00000008 alt_dev_list 0004f0ec g F .text 00000100 write 000489e8 g F .text 000000a0 _putc_r 0004113c g F .text 000000bc .hidden __gtsf2 0005265c g *ABS* 00000000 __ram_rodata_end 0004e9d4 g F .text 000000b8 fstat 0004d554 g F .text 000000f4 .hidden __ledf2 0004802c g F .text 00000140 __pow5mult 000491cc g F .text 0000150c ___vfiprintf_internal_r 00055e9c g O .bss 00000004 __nlocale_changed 0004c9a0 g F .text 00000058 .hidden __umodsi3 00056024 g *ABS* 00000000 end 0005056c g F .text 00000520 altera_avalon_lcd_16207_write 0004f41c g F .text 000000c0 altera_avalon_jtag_uart_init 000401d0 g F .exceptions 00000060 alt_instruction_exception_entry 00052038 g *ABS* 00000000 __CTOR_LIST__ 00072000 g *ABS* 00000000 __alt_stack_pointer 00041efc g F .text 00000064 .hidden __clzsi2 0004fafc g F .text 00000224 altera_avalon_jtag_uart_write 0004653c g F .text 00000004 __sfp_lock_acquire 000475dc g F .text 000000e4 memchr 0004216c g F .text 000022dc ___vfprintf_internal_r 000466a0 g F .text 00000310 _free_r 00046bc0 g F .text 00000010 __locale_mb_cur_max 00051e84 g F .text 00000180 __call_exitprocs 000420e4 g F .text 00000074 __srget_r 00055e98 g O .bss 00000004 __mlocale_changed 00054234 g O .rwdata 00000004 __malloc_sbrk_base 00040230 g F .text 0000003c _start 00055ec0 g O .bss 00000004 _alt_tick_rate 0004816c g F .text 00000148 __lshift 00055ec4 g O .bss 00000004 _alt_nticks 0004ee78 g F .text 00000104 read 0004f258 g F .text 00000060 alt_sys_init 000412c0 g F .text 00000124 .hidden __floatsisf 00051d6c g F .text 00000118 __register_exitproc 00047da0 g F .text 0000028c __multiply 0004f788 g F .text 00000068 altera_avalon_jtag_uart_close 0004c9f8 g F .text 00000028 .hidden __mulsi3 0005265c g *ABS* 00000000 __ram_rwdata_start 00052038 g *ABS* 00000000 __ram_rodata_start 00055ecc g O .bss 00000028 __malloc_current_mallinfo 000410c4 g F .text 00000078 .hidden __eqsf2 00048680 g F .text 0000014c __d2b 0004f2b8 g F .text 00000060 altera_avalon_jtag_uart_read_fd 00051b44 g F .text 000000c4 alt_get_fd 00051854 g F .text 00000158 alt_busy_sleep 0004a968 g F .text 00000054 _close_r 00051cf0 g F .text 0000007c memcmp 0004f378 g F .text 00000050 altera_avalon_jtag_uart_close_fd 00056024 g *ABS* 00000000 __alt_stack_base 0004f3c8 g F .text 00000054 altera_avalon_jtag_uart_ioctl_fd 00044520 g F .text 00000154 __swsetup_r 0004ca20 g F .text 000009d0 .hidden __divdf3 000463fc g F .text 00000118 __sfp 000488e4 g F .text 00000078 __copybits 00052af8 g O .rwdata 00000408 __malloc_av_ 00046548 g F .text 00000004 __sinit_lock_release 0004d648 g F .text 0000086c .hidden __muldf3 00048e08 g F .text 00000054 __sread 00051a3c g F .text 00000108 alt_find_file 00050e54 g F .text 000000a4 alt_dev_llist_insert 0004edf4 g F .text 00000024 __malloc_lock 0004f000 g F .text 000000b0 sbrk 00046140 g F .text 0000005c _fflush_r 0004a9bc g F .text 000000dc _calloc_r 00055e84 g *ABS* 00000000 __bss_start 00047808 g F .text 00000128 memset 00040f98 g F .text 0000002c main 00055eb8 g O .bss 00000004 alt_envp 00055ea0 g O .bss 00000004 __malloc_max_total_mem 0004f318 g F .text 00000060 altera_avalon_jtag_uart_write_fd 0004a8f0 g F .text 00000018 __swbuf 000411f8 g F .text 000000c8 .hidden __ltsf2 00050b38 g F .text 00000134 altera_avalon_lcd_16207_init 00048f3c g F .text 00000008 __sclose 00072000 g *ABS* 00000000 __alt_heap_limit 0004ab88 g F .text 00000014 fclose 0004042c g F .text 00000070 reset_screen 0004489c g F .text 00001688 _dtoa_r 00046dd0 g F .text 0000080c _malloc_r 0004bbf8 g F .text 00000030 __ascii_wctomb 00054254 g O .rwdata 00000004 alt_errno 000469b0 g F .text 000000c4 _fwalk 00040e7c g F .text 0000011c test_picture 00048a88 g F .text 000000c8 putc 0004c844 g F .text 00000084 .hidden __divsi3 0004657c g F .text 00000124 _malloc_trim_r 00052038 g *ABS* 00000000 __CTOR_END__ 00048f44 g F .text 000000dc strcmp 00052038 g *ABS* 00000000 __flash_rodata_start 00052038 g *ABS* 00000000 __DTOR_LIST__ 00055e84 g O .bss 00000008 left_paddle 0004d3f0 g F .text 00000088 .hidden __nedf2 0004f220 g F .text 00000038 alt_irq_init 0004ef7c g F .text 00000084 alt_release_fd 000520d6 g O .rodata 00000100 .hidden __clz_tab 00055e94 g O .bss 00000004 _PathLocale 000402e8 g F .text 00000060 bin 00051ca4 g F .text 00000014 atexit 0004113c g F .text 000000bc .hidden __gesf2 0004a908 g F .text 00000060 _write_r 00046bf0 g F .text 00000018 setlocale 0005422c g O .rwdata 00000004 _impure_ptr 00055eb0 g O .bss 00000004 alt_argc 00045f24 g F .text 0000021c __sflush_r 00050f58 g F .text 00000060 _do_dtors 00046bdc g F .text 00000008 __locale_cjk_lang 00048b6c g F .text 000001d4 __srefill_r 00040020 g .exceptions 00000000 alt_irq_entry 00048510 g F .text 00000064 __ulp 00046564 g F .text 00000018 __fp_unlock_all 00050c6c g F .text 00000060 altera_avalon_lcd_16207_write_fd 00054240 g O .rwdata 00000008 alt_fs_list 00055f14 g O .bss 00000010 ball 00040020 g *ABS* 00000000 __ram_exceptions_start 00046c08 g F .text 0000000c localeconv 00040000 g *ABS* 00000000 __alt_mem_onchip_memory2 00050fd8 g F .text 00000050 alt_ic_isr_register 00054270 g *ABS* 00000000 _edata 00056024 g *ABS* 00000000 _end 0004ab9c g F .text 00000164 __fputwc 00040230 g *ABS* 00000000 __ram_exceptions_end 00055e8c g O .bss 00000008 right_paddle 0004f7f0 g F .text 000000f0 altera_avalon_jtag_uart_ioctl 000510b0 g F .text 0000008c alt_ic_irq_disable 00048e64 g F .text 0000007c __swrite 00054238 g O .rwdata 00000004 __malloc_trim_threshold 00040348 g F .text 00000074 draw_console 00046bd0 g F .text 0000000c __locale_msgcharset 00051cb8 g F .text 00000038 exit 00046a74 g F .text 000000c4 _fwalk_reent 00048314 g F .text 000001fc __mdiff 0004c8c8 g F .text 00000074 .hidden __modsi3 0005426c g O .rwdata 00000004 __ctype_ptr__ 00072000 g *ABS* 00000000 __alt_data_end 00040020 g F .exceptions 00000000 alt_exception 00046540 g F .text 00000004 __sfp_lock_release 000523db g O .rodata 00000101 _ctype_ 0004026c g F .text 0000007c draw 00052004 g F .text 00000034 _exit 00050ccc g F .text 0000012c alt_alarm_start 00046c14 g F .text 000001bc __smakebuf_r 00049020 g F .text 00000098 strlen 00051500 g F .text 0000015c open 0004d478 g F .text 000000dc .hidden __gedf2 0005423c g O .rwdata 00000004 __wctomb 000491b4 g F .text 00000018 __sprint_r 00050fb8 g F .text 00000020 alt_icache_flush_all 00054260 g O .rwdata 00000004 alt_priority_mask 00051028 g F .text 00000088 alt_ic_irq_enable 00044448 g F .text 0000001c __vfprintf_internal 0004bc28 g F .text 0000005c _wctomb_r 0004deb4 g F .text 000008fc .hidden __subdf3 00047cb4 g F .text 000000b0 __lo0bits 00054264 g O .rwdata 00000008 alt_alarm_list 00050ef8 g F .text 00000060 _do_ctors 0004bb38 g F .text 000000c0 wcrtomb 0004e894 g F .text 000000d8 close 0004ebdc g F .text 00000084 alt_load 0004ad24 g F .text 00000080 fputwc 00046544 g F .text 00000004 __sinit_lock_acquire 00047a00 g F .text 00000148 __multadd 000479d8 g F .text 00000028 _Bfree Disassembly of section .entry: 00040000 <__reset>: * Jump to the _start entry point in the .text section if reset code * is allowed or if optimizing for RTL simulation. */ #if defined(ALT_ALLOW_CODE_AT_RESET) || defined(ALT_SIM_OPTIMIZE) /* Jump to the _start entry point in the .text section. */ movhi r1, %hi(_start) 40000: 00400134 movhi at,4 ori r1, r1, %lo(_start) 40004: 08408c14 ori at,at,560 jmp r1 40008: 0800683a jmp at ... Disassembly of section .exceptions: 00040020 : #else /* ALT_EXCEPTION_STACK disabled */ /* * Reserve space on normal stack for registers about to be pushed. */ addi sp, sp, -76 40020: deffed04 addi sp,sp,-76 * documentation for details). * * Leave a gap in the stack frame at 4(sp) for the muldiv handler to * store zero into. */ stw ra, 0(sp) 40024: dfc00015 stw ra,0(sp) stw r1, 8(sp) 40028: d8400215 stw at,8(sp) stw r2, 12(sp) 4002c: d8800315 stw r2,12(sp) stw r3, 16(sp) 40030: d8c00415 stw r3,16(sp) stw r4, 20(sp) 40034: d9000515 stw r4,20(sp) stw r5, 24(sp) 40038: d9400615 stw r5,24(sp) stw r6, 28(sp) 4003c: d9800715 stw r6,28(sp) stw r7, 32(sp) 40040: d9c00815 stw r7,32(sp) rdctl r5, estatus /* Read early to avoid usage stall */ 40044: 000b307a rdctl r5,estatus stw r8, 36(sp) 40048: da000915 stw r8,36(sp) stw r9, 40(sp) 4004c: da400a15 stw r9,40(sp) stw r10, 44(sp) 40050: da800b15 stw r10,44(sp) stw r11, 48(sp) 40054: dac00c15 stw r11,48(sp) stw r12, 52(sp) 40058: db000d15 stw r12,52(sp) stw r13, 56(sp) 4005c: db400e15 stw r13,56(sp) stw r14, 60(sp) 40060: db800f15 stw r14,60(sp) stw r15, 64(sp) 40064: dbc01015 stw r15,64(sp) /* * ea-4 contains the address of the instruction being executed * when the exception occured. For interrupt exceptions, we will * will be re-issue the isntruction. Store it in 72(sp) */ stw r5, 68(sp) /* estatus */ 40068: d9401115 stw r5,68(sp) addi r15, ea, -4 /* instruction that caused exception */ 4006c: ebffff04 addi r15,ea,-4 stw r15, 72(sp) 40070: dbc01215 stw r15,72(sp) #else /* * Test to see if the exception was a software exception or caused * by an external interrupt, and vector accordingly. */ rdctl r4, ipending 40074: 0009313a rdctl r4,ipending andi r2, r5, 1 40078: 2880004c andi r2,r5,1 beq r2, zero, .Lnot_irq 4007c: 10000326 beq r2,zero,4008c beq r4, zero, .Lnot_irq 40080: 20000226 beq r4,zero,4008c /* * Now that all necessary registers have been preserved, call * alt_irq_handler() to process the interrupts. */ call alt_irq_handler 40084: 00400fc0 call 400fc .section .exceptions.irqreturn, "xa" br .Lexception_exit 40088: 00000706 br 400a8 * upon completion, so we write ea (address of instruction *after* * the one where the exception occured) into 72(sp). The actual * instruction that caused the exception is written in r2, which these * handlers will utilize. */ stw ea, 72(sp) /* EA is PC+4 so will skip over instruction causing exception */ 4008c: df401215 stw ea,72(sp) .Lunknown_16bit: addi.n r4, r4, 2 /* Need PC+2 to skip over instruction causing exception */ stw r4, 72(sp) #else /* CDX is not Enabled and all instructions are 32bits */ ldw r2, -4(ea) /* Instruction value that caused exception */ 40090: e8bfff17 ldw r2,-4(ea) * debugger is present) or go into an infinite loop since the * handling behavior is undefined; in that case we will not return here. */ /* Load exception-causing address as first argument (r4) */ addi r4, ea, -4 40094: e93fff04 addi r4,ea,-4 /* Call the instruction-exception entry */ call alt_instruction_exception_entry 40098: 00401d00 call 401d0 * instruction * * Return code was 0: Skip. The instruction after the exception is * already stored in 72(sp). */ bne r2, r0, .Lexception_exit 4009c: 1000021e bne r2,zero,400a8 /* * Otherwise, modify 72(sp) to re-issue the instruction that caused the * exception. */ addi r15, ea, -4 /* instruction that caused exception */ 400a0: ebffff04 addi r15,ea,-4 stw r15, 72(sp) 400a4: dbc01215 stw r15,72(sp) /* * Restore the saved registers, so that all general purpose registers * have been restored to their state at the time the interrupt occured. */ ldw r5, 68(sp) 400a8: d9401117 ldw r5,68(sp) ldw ea, 72(sp) /* This becomes the PC once eret is executed */ 400ac: df401217 ldw ea,72(sp) ldw ra, 0(sp) 400b0: dfc00017 ldw ra,0(sp) wrctl estatus, r5 400b4: 2801707a wrctl estatus,r5 ldw r1, 8(sp) 400b8: d8400217 ldw at,8(sp) ldw r2, 12(sp) 400bc: d8800317 ldw r2,12(sp) ldw r3, 16(sp) 400c0: d8c00417 ldw r3,16(sp) ldw r4, 20(sp) 400c4: d9000517 ldw r4,20(sp) ldw r5, 24(sp) 400c8: d9400617 ldw r5,24(sp) ldw r6, 28(sp) 400cc: d9800717 ldw r6,28(sp) ldw r7, 32(sp) 400d0: d9c00817 ldw r7,32(sp) #if defined(ALT_EXCEPTION_STACK) && defined(ALT_STACK_CHECK) ldw et, %gprel(alt_exception_old_stack_limit)(gp) #endif ldw r8, 36(sp) 400d4: da000917 ldw r8,36(sp) ldw r9, 40(sp) 400d8: da400a17 ldw r9,40(sp) ldw r10, 44(sp) 400dc: da800b17 ldw r10,44(sp) ldw r11, 48(sp) 400e0: dac00c17 ldw r11,48(sp) ldw r12, 52(sp) 400e4: db000d17 ldw r12,52(sp) ldw r13, 56(sp) 400e8: db400e17 ldw r13,56(sp) ldw r14, 60(sp) 400ec: db800f17 ldw r14,60(sp) ldw r15, 64(sp) 400f0: dbc01017 ldw r15,64(sp) stw et, %gprel(alt_stack_limit_value)(gp) stw zero, %gprel(alt_exception_old_stack_limit)(gp) #endif /* ALT_STACK_CHECK */ ldw sp, 76(sp) #else /* ALT_EXCEPTION_STACK disabled */ addi sp, sp, 76 400f4: dec01304 addi sp,sp,76 /* * Return to the interrupted instruction. */ eret 400f8: ef80083a eret 000400fc : * instruction is present if the macro ALT_CI_INTERRUPT_VECTOR defined. */ void alt_irq_handler (void) __attribute__ ((section (".exceptions"))); void alt_irq_handler (void) { 400fc: defff904 addi sp,sp,-28 40100: dfc00615 stw ra,24(sp) 40104: df000515 stw fp,20(sp) 40108: df000504 addi fp,sp,20 /* * Notify the operating system that we are at interrupt level. */ ALT_OS_INT_ENTER(); 4010c: 0001883a nop #ifndef NIOS2_EIC_PRESENT static ALT_INLINE alt_u32 ALT_ALWAYS_INLINE alt_irq_pending (void) { alt_u32 active; NIOS2_READ_IPENDING (active); 40110: 0005313a rdctl r2,ipending 40114: e0bffe15 stw r2,-8(fp) return active; 40118: e0bffe17 ldw r2,-8(fp) * Consider the case where the high priority interupt is asserted during * the interrupt entry sequence for a lower priority interrupt to see why * this is the case. */ active = alt_irq_pending (); 4011c: e0bffb15 stw r2,-20(fp) do { i = 0; 40120: e03ffd15 stw zero,-12(fp) mask = 1; 40124: 00800044 movi r2,1 40128: e0bffc15 stw r2,-16(fp) * called to clear the interrupt condition. */ do { if (active & mask) 4012c: e0fffb17 ldw r3,-20(fp) 40130: e0bffc17 ldw r2,-16(fp) 40134: 1884703a and r2,r3,r2 40138: 10001426 beq r2,zero,4018c { #ifdef ALT_ENHANCED_INTERRUPT_API_PRESENT alt_irq[i].handler(alt_irq[i].context); 4013c: 00800174 movhi r2,5 40140: 1097c904 addi r2,r2,24356 40144: e0fffd17 ldw r3,-12(fp) 40148: 180690fa slli r3,r3,3 4014c: 10c5883a add r2,r2,r3 40150: 10c00017 ldw r3,0(r2) 40154: 00800174 movhi r2,5 40158: 1097c904 addi r2,r2,24356 4015c: e13ffd17 ldw r4,-12(fp) 40160: 200890fa slli r4,r4,3 40164: 1105883a add r2,r2,r4 40168: 10800104 addi r2,r2,4 4016c: 10800017 ldw r2,0(r2) 40170: 1009883a mov r4,r2 40174: 183ee83a callr r3 #else alt_irq[i].handler(alt_irq[i].context, i); #endif break; 40178: 0001883a nop #ifndef NIOS2_EIC_PRESENT static ALT_INLINE alt_u32 ALT_ALWAYS_INLINE alt_irq_pending (void) { alt_u32 active; NIOS2_READ_IPENDING (active); 4017c: 0005313a rdctl r2,ipending 40180: e0bfff15 stw r2,-4(fp) return active; 40184: e0bfff17 ldw r2,-4(fp) 40188: 00000706 br 401a8 } mask <<= 1; 4018c: e0bffc17 ldw r2,-16(fp) 40190: 1085883a add r2,r2,r2 40194: e0bffc15 stw r2,-16(fp) i++; 40198: e0bffd17 ldw r2,-12(fp) 4019c: 10800044 addi r2,r2,1 401a0: e0bffd15 stw r2,-12(fp) } while (1); 401a4: 003fe106 br 4012c <__alt_data_end+0xfffce12c> active = alt_irq_pending (); 401a8: e0bffb15 stw r2,-20(fp) } while (active); 401ac: e0bffb17 ldw r2,-20(fp) 401b0: 103fdb1e bne r2,zero,40120 <__alt_data_end+0xfffce120> /* * Notify the operating system that interrupt processing is complete. */ ALT_OS_INT_EXIT(); 401b4: 0001883a nop } 401b8: 0001883a nop 401bc: e037883a mov sp,fp 401c0: dfc00117 ldw ra,4(sp) 401c4: df000017 ldw fp,0(sp) 401c8: dec00204 addi sp,sp,8 401cc: f800283a ret 000401d0 : * that handler if it has been registered. Absent a handler, it will * break break or hang as discussed below. */ int alt_instruction_exception_entry (alt_u32 exception_pc) { 401d0: defffb04 addi sp,sp,-20 401d4: dfc00415 stw ra,16(sp) 401d8: df000315 stw fp,12(sp) 401dc: df000304 addi fp,sp,12 401e0: e13fff15 stw r4,-4(fp) cause = ( (cause & NIOS2_EXCEPTION_REG_CAUSE_MASK) >> NIOS2_EXCEPTION_REG_CAUSE_OFST ); NIOS2_READ_BADADDR(badaddr); #else cause = NIOS2_EXCEPTION_CAUSE_NOT_PRESENT; 401e4: 00bfffc4 movi r2,-1 401e8: e0bffd15 stw r2,-12(fp) badaddr = 0; 401ec: e03ffe15 stw zero,-8(fp) #endif /* NIOS2_HAS_EXTRA_EXCEPTION_INFO */ if(alt_instruction_exception_handler) { 401f0: d0a72817 ldw r2,-25440(gp) 401f4: 10000726 beq r2,zero,40214 * Call handler. Its return value indicates whether the exception-causing * instruction should be re-issued. The code that called us, * alt_eceptions_entry.S, will look at this value and adjust the ea * register as necessary */ return alt_instruction_exception_handler(cause, exception_pc, badaddr); 401f8: d0a72817 ldw r2,-25440(gp) 401fc: e0fffd17 ldw r3,-12(fp) 40200: e1bffe17 ldw r6,-8(fp) 40204: e17fff17 ldw r5,-4(fp) 40208: 1809883a mov r4,r3 4020c: 103ee83a callr r2 40210: 00000206 br 4021c * (a peripheral which negates its interrupt output before its * interrupt handler has been executed will cause spurious interrupts) */ else { #ifdef NIOS2_HAS_DEBUG_STUB NIOS2_BREAK(); 40214: 003da03a break 0 ; #endif /* NIOS2_HAS_DEBUG_STUB */ } /* We should not get here. Remove compiler warning. */ return NIOS2_EXCEPTION_RETURN_REISSUE_INST; 40218: 0005883a mov r2,zero } 4021c: e037883a mov sp,fp 40220: dfc00117 ldw ra,4(sp) 40224: df000017 ldw fp,0(sp) 40228: dec00204 addi sp,sp,8 4022c: f800283a ret Disassembly of section .text: 00040230 <_start>: /* * Now that the caches are initialized, set up the stack pointer and global pointer. * The values provided by the linker are assumed to be correctly aligned. */ movhi sp, %hi(__alt_stack_pointer) 40230: 06c001f4 movhi sp,7 ori sp, sp, %lo(__alt_stack_pointer) 40234: dec80014 ori sp,sp,8192 movhi gp, %hi(_gp) 40238: 06800174 movhi gp,5 ori gp, gp, %lo(_gp) 4023c: d6b08a14 ori gp,gp,49704 */ #ifndef ALT_SIM_OPTIMIZE /* Log that the BSS is about to be cleared. */ ALT_LOG_PUTS(alt_log_msg_bss) movhi r2, %hi(__bss_start) 40240: 00800174 movhi r2,5 ori r2, r2, %lo(__bss_start) 40244: 1097a114 ori r2,r2,24196 movhi r3, %hi(__bss_end) 40248: 00c00174 movhi r3,5 ori r3, r3, %lo(__bss_end) 4024c: 18d80914 ori r3,r3,24612 beq r2, r3, 1f 40250: 10c00326 beq r2,r3,40260 <_start+0x30> 0: stw zero, (r2) 40254: 10000015 stw zero,0(r2) addi r2, r2, 4 40258: 10800104 addi r2,r2,4 bltu r2, r3, 0b 4025c: 10fffd36 bltu r2,r3,40254 <__alt_data_end+0xfffce254> * section aren't defined until alt_load() has been called). */ mov et, zero #endif call alt_load 40260: 004ebdc0 call 4ebdc /* Log that alt_main is about to be called. */ ALT_LOG_PUTS(alt_log_msg_alt_main) /* Call the C entry point. It should never return. */ call alt_main 40264: 004ed780 call 4ed78 00040268 : /* Wait in infinite loop in case alt_main does return. */ alt_after_alt_main: br alt_after_alt_main 40268: 003fff06 br 40268 <__alt_data_end+0xfffce268> 0004026c : #define COLS 12 #define ROWS 8 int screen[ROWS]; void draw() { 4026c: defffd04 addi sp,sp,-12 40270: df000215 stw fp,8(sp) 40274: df000204 addi fp,sp,8 int row,i; for (i = 0 ; i < ROWS ; i++) { 40278: e03ffe15 stw zero,-8(fp) 4027c: 00001206 br 402c8 row = screen[i] | (i<<12); //send format: (3bits row indicator,12bits data) 40280: 00800174 movhi r2,5 40284: 1097bd04 addi r2,r2,24308 40288: e0fffe17 ldw r3,-8(fp) 4028c: 18c7883a add r3,r3,r3 40290: 18c7883a add r3,r3,r3 40294: 10c5883a add r2,r2,r3 40298: 10c00017 ldw r3,0(r2) 4029c: e0bffe17 ldw r2,-8(fp) 402a0: 1004933a slli r2,r2,12 402a4: 1884b03a or r2,r3,r2 402a8: e0bfff15 stw r2,-4(fp) IOWR_ALTERA_AVALON_PIO_DATA(PIO_MATRIX_BASE, row); 402ac: 00800234 movhi r2,8 402b0: 10841404 addi r2,r2,4176 402b4: e0ffff17 ldw r3,-4(fp) 402b8: 10c00035 stwio r3,0(r2) int screen[ROWS]; void draw() { int row,i; for (i = 0 ; i < ROWS ; i++) { 402bc: e0bffe17 ldw r2,-8(fp) 402c0: 10800044 addi r2,r2,1 402c4: e0bffe15 stw r2,-8(fp) 402c8: e0bffe17 ldw r2,-8(fp) 402cc: 10800210 cmplti r2,r2,8 402d0: 103feb1e bne r2,zero,40280 <__alt_data_end+0xfffce280> row = screen[i] | (i<<12); //send format: (3bits row indicator,12bits data) IOWR_ALTERA_AVALON_PIO_DATA(PIO_MATRIX_BASE, row); } } 402d4: 0001883a nop 402d8: e037883a mov sp,fp 402dc: df000017 ldw fp,0(sp) 402e0: dec00104 addi sp,sp,4 402e4: f800283a ret 000402e8 : void bin(unsigned n) { 402e8: defffd04 addi sp,sp,-12 402ec: dfc00215 stw ra,8(sp) 402f0: df000115 stw fp,4(sp) 402f4: df000104 addi fp,sp,4 402f8: e13fff15 stw r4,-4(fp) if (n > 1) 402fc: e0bfff17 ldw r2,-4(fp) 40300: 108000b0 cmpltui r2,r2,2 40304: 1000041e bne r2,zero,40318 bin(n >> 1); 40308: e0bfff17 ldw r2,-4(fp) 4030c: 1004d07a srli r2,r2,1 40310: 1009883a mov r4,r2 40314: 00402e80 call 402e8 printf("%d", n & 1); 40318: e0bfff17 ldw r2,-4(fp) 4031c: 1080004c andi r2,r2,1 40320: 100b883a mov r5,r2 40324: 01000174 movhi r4,5 40328: 21080e04 addi r4,r4,8248 4032c: 00420880 call 42088 } 40330: 0001883a nop 40334: e037883a mov sp,fp 40338: dfc00117 ldw ra,4(sp) 4033c: df000017 ldw fp,0(sp) 40340: dec00204 addi sp,sp,8 40344: f800283a ret 00040348 : void draw_console() { 40348: defffd04 addi sp,sp,-12 4034c: dfc00215 stw ra,8(sp) 40350: df000115 stw fp,4(sp) 40354: df000104 addi fp,sp,4 int i; for (i = 0 ; i < ROWS ; i++) { 40358: e03fff15 stw zero,-4(fp) 4035c: 00000e06 br 40398 bin(screen[i]); 40360: 00800174 movhi r2,5 40364: 1097bd04 addi r2,r2,24308 40368: e0ffff17 ldw r3,-4(fp) 4036c: 18c7883a add r3,r3,r3 40370: 18c7883a add r3,r3,r3 40374: 10c5883a add r2,r2,r3 40378: 10800017 ldw r2,0(r2) 4037c: 1009883a mov r4,r2 40380: 00402e80 call 402e8 printf("\n"); 40384: 01000284 movi r4,10 40388: 00420cc0 call 420cc } void draw_console() { int i; for (i = 0 ; i < ROWS ; i++) { 4038c: e0bfff17 ldw r2,-4(fp) 40390: 10800044 addi r2,r2,1 40394: e0bfff15 stw r2,-4(fp) 40398: e0bfff17 ldw r2,-4(fp) 4039c: 10800210 cmplti r2,r2,8 403a0: 103fef1e bne r2,zero,40360 <__alt_data_end+0xfffce360> bin(screen[i]); printf("\n"); } } 403a4: 0001883a nop 403a8: e037883a mov sp,fp 403ac: dfc00117 ldw ra,4(sp) 403b0: df000017 ldw fp,0(sp) 403b4: dec00204 addi sp,sp,8 403b8: f800283a ret 000403bc : void set_pixel(int x, int y) { 403bc: defffd04 addi sp,sp,-12 403c0: df000215 stw fp,8(sp) 403c4: df000204 addi fp,sp,8 403c8: e13ffe15 stw r4,-8(fp) 403cc: e17fff15 stw r5,-4(fp) screen[y] = screen[y] & ~(1<: void reset_screen() { 4042c: defffd04 addi sp,sp,-12 40430: dfc00215 stw ra,8(sp) 40434: df000115 stw fp,4(sp) 40438: df000104 addi fp,sp,4 int i; for (i=0;i screen[i] = 0; 40444: 00800174 movhi r2,5 40448: 1097bd04 addi r2,r2,24308 4044c: e0ffff17 ldw r3,-4(fp) 40450: 18c7883a add r3,r3,r3 40454: 18c7883a add r3,r3,r3 40458: 10c5883a add r2,r2,r3 4045c: 10000015 stw zero,0(r2) set_pixel(12,i); 40460: e17fff17 ldw r5,-4(fp) 40464: 01000304 movi r4,12 40468: 00403bc0 call 403bc screen[y] = screen[y] & ~(1< screen[i] = 0; set_pixel(12,i); } } 40484: 0001883a nop 40488: e037883a mov sp,fp 4048c: dfc00117 ldw ra,4(sp) 40490: df000017 ldw fp,0(sp) 40494: dec00204 addi sp,sp,8 40498: f800283a ret 0004049c : struct Ball ball; struct Paddle left_paddle; struct Paddle right_paddle; void reset_pos() { 4049c: deffff04 addi sp,sp,-4 404a0: df000015 stw fp,0(sp) 404a4: d839883a mov fp,sp ball.x = COLS/2 - 1; 404a8: 00800174 movhi r2,5 404ac: 1097c504 addi r2,r2,24340 404b0: 00d02834 movhi r3,16544 404b4: 10c00015 stw r3,0(r2) ball.y = ROWS/2 - 1; 404b8: 00800174 movhi r2,5 404bc: 1097c504 addi r2,r2,24340 404c0: 00d01034 movhi r3,16448 404c4: 10c00115 stw r3,4(r2) ball.vel_x = - 1; 404c8: 00800174 movhi r2,5 404cc: 1097c504 addi r2,r2,24340 404d0: 00efe034 movhi r3,49024 404d4: 10c00215 stw r3,8(r2) ball.vel_y = - 1; 404d8: 00800174 movhi r2,5 404dc: 1097c504 addi r2,r2,24340 404e0: 00efe034 movhi r3,49024 404e4: 10c00315 stw r3,12(r2) left_paddle.y = 0; 404e8: d0271715 stw zero,-25508(gp) left_paddle.length = 3; 404ec: 008000c4 movi r2,3 404f0: d0a71815 stw r2,-25504(gp) right_paddle.y = 0; 404f4: d0271915 stw zero,-25500(gp) right_paddle.length = 3; 404f8: 008000c4 movi r2,3 404fc: d0a71a15 stw r2,-25496(gp) } 40500: 0001883a nop 40504: e037883a mov sp,fp 40508: df000017 ldw fp,0(sp) 4050c: dec00104 addi sp,sp,4 40510: f800283a ret 00040514 : void game() { 40514: defff704 addi sp,sp,-36 40518: dfc00815 stw ra,32(sp) 4051c: df000715 stw fp,28(sp) 40520: dc400615 stw r17,24(sp) 40524: dc000515 stw r16,20(sp) 40528: df000704 addi fp,sp,28 int i,k; unsigned buttons; k=0; 4052c: e03ffc15 stw zero,-16(fp) reset_pos(); 40530: 004049c0 call 4049c while (1){ buttons = ~IORD_ALTERA_AVALON_PIO_DATA(PIO_BUTTON_BASE); 40534: 00800234 movhi r2,8 40538: 10841004 addi r2,r2,4160 4053c: 10800037 ldwio r2,0(r2) 40540: 0084303a nor r2,zero,r2 40544: e0bffd15 stw r2,-12(fp) //buttons = 10; if (buttons & (1< left_paddle.y = MAX(left_paddle.y - (10 * TICK),0); 40554: d0e71717 ldw r3,-25508(gp) 40558: 008f7374 movhi r2,15821 4055c: 10b33304 addi r2,r2,-13108 40560: 1885ffb2 custom 254,r2,r3,r2 40564: 000b883a mov r5,zero 40568: 1009883a mov r4,r2 4056c: 004113c0 call 4113c <__gesf2> 40570: 0080050e bge zero,r2,40588 40574: d0e71717 ldw r3,-25508(gp) 40578: 008f7374 movhi r2,15821 4057c: 10b33304 addi r2,r2,-13108 40580: 1885ffb2 custom 254,r2,r3,r2 40584: 00000106 br 4058c 40588: 0005883a mov r2,zero 4058c: d0a71715 stw r2,-25508(gp) printf("%f\n",left_paddle.y); 40590: d0a71717 ldw r2,-25508(gp) 40594: 1009883a mov r4,r2 40598: 0041dec0 call 41dec <__extendsfdf2> 4059c: 100d883a mov r6,r2 405a0: 180f883a mov r7,r3 405a4: 300b883a mov r5,r6 405a8: 380d883a mov r6,r7 405ac: 01000174 movhi r4,5 405b0: 21080f04 addi r4,r4,8252 405b4: 00420880 call 42088 } if (buttons & (1< left_paddle.y = MIN(left_paddle.y + (10 * TICK), ROWS - (left_paddle.length)); 405c4: d0e71717 ldw r3,-25508(gp) 405c8: 008f7374 movhi r2,15821 405cc: 10b33304 addi r2,r2,-13108 405d0: 18a1ff72 custom 253,r16,r3,r2 405d4: d0a71817 ldw r2,-25504(gp) 405d8: 00c00204 movi r3,8 405dc: 1885c83a sub r2,r3,r2 405e0: 1009883a mov r4,r2 405e4: 00412c00 call 412c0 <__floatsisf> 405e8: 1007883a mov r3,r2 405ec: 180b883a mov r5,r3 405f0: 8009883a mov r4,r16 405f4: 00411f80 call 411f8 <__lesf2> 405f8: 1000050e bge r2,zero,40610 405fc: d0e71717 ldw r3,-25508(gp) 40600: 008f7374 movhi r2,15821 40604: 10b33304 addi r2,r2,-13108 40608: 1887ff72 custom 253,r3,r3,r2 4060c: 00000606 br 40628 40610: d0a71817 ldw r2,-25504(gp) 40614: 00c00204 movi r3,8 40618: 1885c83a sub r2,r3,r2 4061c: 1009883a mov r4,r2 40620: 00412c00 call 412c0 <__floatsisf> 40624: 1007883a mov r3,r2 40628: d0e71715 stw r3,-25508(gp) printf("%f\n",left_paddle.y); 4062c: d0a71717 ldw r2,-25508(gp) 40630: 1009883a mov r4,r2 40634: 0041dec0 call 41dec <__extendsfdf2> 40638: 100d883a mov r6,r2 4063c: 180f883a mov r7,r3 40640: 300b883a mov r5,r6 40644: 380d883a mov r6,r7 40648: 01000174 movhi r4,5 4064c: 21080f04 addi r4,r4,8252 40650: 00420880 call 42088 } if (buttons & (1< right_paddle.y = MAX(right_paddle.y - (10 * TICK), 0); 40660: d0e71917 ldw r3,-25500(gp) 40664: 008f7374 movhi r2,15821 40668: 10b33304 addi r2,r2,-13108 4066c: 1885ffb2 custom 254,r2,r3,r2 40670: 000b883a mov r5,zero 40674: 1009883a mov r4,r2 40678: 004113c0 call 4113c <__gesf2> 4067c: 0080050e bge zero,r2,40694 40680: d0e71917 ldw r3,-25500(gp) 40684: 008f7374 movhi r2,15821 40688: 10b33304 addi r2,r2,-13108 4068c: 1885ffb2 custom 254,r2,r3,r2 40690: 00000106 br 40698 40694: 0005883a mov r2,zero 40698: d0a71915 stw r2,-25500(gp) } if (buttons & (1< right_paddle.y = MIN(right_paddle.y + (10 * TICK), ROWS - (right_paddle.length)); 406a8: d0e71917 ldw r3,-25500(gp) 406ac: 008f7374 movhi r2,15821 406b0: 10b33304 addi r2,r2,-13108 406b4: 18a1ff72 custom 253,r16,r3,r2 406b8: d0a71a17 ldw r2,-25496(gp) 406bc: 00c00204 movi r3,8 406c0: 1885c83a sub r2,r3,r2 406c4: 1009883a mov r4,r2 406c8: 00412c00 call 412c0 <__floatsisf> 406cc: 1007883a mov r3,r2 406d0: 180b883a mov r5,r3 406d4: 8009883a mov r4,r16 406d8: 00411f80 call 411f8 <__lesf2> 406dc: 1000050e bge r2,zero,406f4 406e0: d0e71917 ldw r3,-25500(gp) 406e4: 008f7374 movhi r2,15821 406e8: 10b33304 addi r2,r2,-13108 406ec: 1887ff72 custom 253,r3,r3,r2 406f0: 00000606 br 4070c 406f4: d0a71a17 ldw r2,-25496(gp) 406f8: 00c00204 movi r3,8 406fc: 1885c83a sub r2,r3,r2 40700: 1009883a mov r4,r2 40704: 00412c00 call 412c0 <__floatsisf> 40708: 1007883a mov r3,r2 4070c: d0e71915 stw r3,-25500(gp) } ball.y = MAX(MIN(ball.y + ball.vel_y * TICK,ROWS - 1),0); 40710: 00800174 movhi r2,5 40714: 1097c504 addi r2,r2,24340 40718: 10c00117 ldw r3,4(r2) 4071c: 00800174 movhi r2,5 40720: 1097c504 addi r2,r2,24340 40724: 11000317 ldw r4,12(r2) 40728: 008f0934 movhi r2,15396 4072c: 10b5c284 addi r2,r2,-10486 40730: 2085ff32 custom 252,r2,r4,r2 40734: 1885ff72 custom 253,r2,r3,r2 40738: 01503834 movhi r5,16608 4073c: 1009883a mov r4,r2 40740: 00411f80 call 411f8 <__lesf2> 40744: 1000110e bge r2,zero,4078c 40748: 00800174 movhi r2,5 4074c: 1097c504 addi r2,r2,24340 40750: 10c00117 ldw r3,4(r2) 40754: 00800174 movhi r2,5 40758: 1097c504 addi r2,r2,24340 4075c: 11000317 ldw r4,12(r2) 40760: 008f0934 movhi r2,15396 40764: 10b5c284 addi r2,r2,-10486 40768: 2085ff32 custom 252,r2,r4,r2 4076c: 1885ff72 custom 253,r2,r3,r2 40770: 04000044 movi r16,1 40774: 000b883a mov r5,zero 40778: 1009883a mov r4,r2 4077c: 004113c0 call 4113c <__gesf2> 40780: 00800316 blt zero,r2,40790 40784: 0021883a mov r16,zero 40788: 00000106 br 40790 4078c: 04000044 movi r16,1 40790: 80803fcc andi r2,r16,255 40794: 10001b26 beq r2,zero,40804 40798: 00800174 movhi r2,5 4079c: 1097c504 addi r2,r2,24340 407a0: 10c00117 ldw r3,4(r2) 407a4: 00800174 movhi r2,5 407a8: 1097c504 addi r2,r2,24340 407ac: 11000317 ldw r4,12(r2) 407b0: 008f0934 movhi r2,15396 407b4: 10b5c284 addi r2,r2,-10486 407b8: 2085ff32 custom 252,r2,r4,r2 407bc: 1885ff72 custom 253,r2,r3,r2 407c0: 01503834 movhi r5,16608 407c4: 1009883a mov r4,r2 407c8: 00411f80 call 411f8 <__lesf2> 407cc: 10000b0e bge r2,zero,407fc 407d0: 00800174 movhi r2,5 407d4: 1097c504 addi r2,r2,24340 407d8: 10c00117 ldw r3,4(r2) 407dc: 00800174 movhi r2,5 407e0: 1097c504 addi r2,r2,24340 407e4: 11000317 ldw r4,12(r2) 407e8: 008f0934 movhi r2,15396 407ec: 10b5c284 addi r2,r2,-10486 407f0: 2085ff32 custom 252,r2,r4,r2 407f4: 1887ff72 custom 253,r3,r3,r2 407f8: 00000306 br 40808 407fc: 00d03834 movhi r3,16608 40800: 00000106 br 40808 40804: 0007883a mov r3,zero 40808: 00800174 movhi r2,5 4080c: 1097c504 addi r2,r2,24340 40810: 10c00115 stw r3,4(r2) if (ball.y == 0 || ball.y == ROWS - 1){ 40814: 00800174 movhi r2,5 40818: 1097c504 addi r2,r2,24340 4081c: 10c00117 ldw r3,4(r2) 40820: 000b883a mov r5,zero 40824: 1809883a mov r4,r3 40828: 00410c40 call 410c4 <__eqsf2> 4082c: 10000726 beq r2,zero,4084c 40830: 00800174 movhi r2,5 40834: 1097c504 addi r2,r2,24340 40838: 10c00117 ldw r3,4(r2) 4083c: 01503834 movhi r5,16608 40840: 1809883a mov r4,r3 40844: 00410c40 call 410c4 <__eqsf2> 40848: 1000071e bne r2,zero,40868 ball.vel_y = -ball.vel_y; 4084c: 00800174 movhi r2,5 40850: 1097c504 addi r2,r2,24340 40854: 10c00317 ldw r3,12(r2) 40858: 18e0003c xorhi r3,r3,32768 4085c: 00800174 movhi r2,5 40860: 1097c504 addi r2,r2,24340 40864: 10c00315 stw r3,12(r2) } ball.x = MAX(MIN(ball.x + ball.vel_x * TICK,COLS - 1),0); 40868: 00800174 movhi r2,5 4086c: 1097c504 addi r2,r2,24340 40870: 10c00017 ldw r3,0(r2) 40874: 00800174 movhi r2,5 40878: 1097c504 addi r2,r2,24340 4087c: 11000217 ldw r4,8(r2) 40880: 008f0934 movhi r2,15396 40884: 10b5c284 addi r2,r2,-10486 40888: 2085ff32 custom 252,r2,r4,r2 4088c: 1885ff72 custom 253,r2,r3,r2 40890: 01504c34 movhi r5,16688 40894: 1009883a mov r4,r2 40898: 00411f80 call 411f8 <__lesf2> 4089c: 1000110e bge r2,zero,408e4 408a0: 00800174 movhi r2,5 408a4: 1097c504 addi r2,r2,24340 408a8: 10c00017 ldw r3,0(r2) 408ac: 00800174 movhi r2,5 408b0: 1097c504 addi r2,r2,24340 408b4: 11000217 ldw r4,8(r2) 408b8: 008f0934 movhi r2,15396 408bc: 10b5c284 addi r2,r2,-10486 408c0: 2085ff32 custom 252,r2,r4,r2 408c4: 1885ff72 custom 253,r2,r3,r2 408c8: 04000044 movi r16,1 408cc: 000b883a mov r5,zero 408d0: 1009883a mov r4,r2 408d4: 004113c0 call 4113c <__gesf2> 408d8: 00800316 blt zero,r2,408e8 408dc: 0021883a mov r16,zero 408e0: 00000106 br 408e8 408e4: 04000044 movi r16,1 408e8: 80803fcc andi r2,r16,255 408ec: 10001b26 beq r2,zero,4095c 408f0: 00800174 movhi r2,5 408f4: 1097c504 addi r2,r2,24340 408f8: 10c00017 ldw r3,0(r2) 408fc: 00800174 movhi r2,5 40900: 1097c504 addi r2,r2,24340 40904: 11000217 ldw r4,8(r2) 40908: 008f0934 movhi r2,15396 4090c: 10b5c284 addi r2,r2,-10486 40910: 2085ff32 custom 252,r2,r4,r2 40914: 1885ff72 custom 253,r2,r3,r2 40918: 01504c34 movhi r5,16688 4091c: 1009883a mov r4,r2 40920: 00411f80 call 411f8 <__lesf2> 40924: 10000b0e bge r2,zero,40954 40928: 00800174 movhi r2,5 4092c: 1097c504 addi r2,r2,24340 40930: 10c00017 ldw r3,0(r2) 40934: 00800174 movhi r2,5 40938: 1097c504 addi r2,r2,24340 4093c: 11000217 ldw r4,8(r2) 40940: 008f0934 movhi r2,15396 40944: 10b5c284 addi r2,r2,-10486 40948: 2085ff32 custom 252,r2,r4,r2 4094c: 1887ff72 custom 253,r3,r3,r2 40950: 00000306 br 40960 40954: 00d04c34 movhi r3,16688 40958: 00000106 br 40960 4095c: 0007883a mov r3,zero 40960: 00800174 movhi r2,5 40964: 1097c504 addi r2,r2,24340 40968: 10c00015 stw r3,0(r2) if (ball.x <= 1){ 4096c: 00800174 movhi r2,5 40970: 1097c504 addi r2,r2,24340 40974: 10c00017 ldw r3,0(r2) 40978: 014fe034 movhi r5,16256 4097c: 1809883a mov r4,r3 40980: 00411f80 call 411f8 <__lesf2> 40984: 00803d16 blt zero,r2,40a7c if (ball.y >= left_paddle.y && ball.y <= (left_paddle.y + left_paddle.length -1)){ 40988: 00800174 movhi r2,5 4098c: 1097c504 addi r2,r2,24340 40990: 10c00117 ldw r3,4(r2) 40994: d0a71717 ldw r2,-25508(gp) 40998: 100b883a mov r5,r2 4099c: 1809883a mov r4,r3 409a0: 004113c0 call 4113c <__gesf2> 409a4: 10001716 blt r2,zero,40a04 409a8: 00800174 movhi r2,5 409ac: 1097c504 addi r2,r2,24340 409b0: 14400117 ldw r17,4(r2) 409b4: d4271717 ldw r16,-25508(gp) 409b8: d0a71817 ldw r2,-25504(gp) 409bc: 1009883a mov r4,r2 409c0: 00412c00 call 412c0 <__floatsisf> 409c4: 1007883a mov r3,r2 409c8: 80c7ff72 custom 253,r3,r16,r3 409cc: 008fe034 movhi r2,16256 409d0: 1885ffb2 custom 254,r2,r3,r2 409d4: 100b883a mov r5,r2 409d8: 8809883a mov r4,r17 409dc: 00411f80 call 411f8 <__lesf2> 409e0: 00800816 blt zero,r2,40a04 ball.vel_x = - ball.vel_x; 409e4: 00800174 movhi r2,5 409e8: 1097c504 addi r2,r2,24340 409ec: 10c00217 ldw r3,8(r2) 409f0: 18e0003c xorhi r3,r3,32768 409f4: 00800174 movhi r2,5 409f8: 1097c504 addi r2,r2,24340 409fc: 10c00215 stw r3,8(r2) 40a00: 00001e06 br 40a7c } else { printf("%d ,, ballx: %f, ball y: %f",k,ball.x,ball.y); 40a04: 00800174 movhi r2,5 40a08: 1097c504 addi r2,r2,24340 40a0c: 10c00017 ldw r3,0(r2) 40a10: 1809883a mov r4,r3 40a14: 0041dec0 call 41dec <__extendsfdf2> 40a18: 1021883a mov r16,r2 40a1c: 1823883a mov r17,r3 40a20: 00800174 movhi r2,5 40a24: 1097c504 addi r2,r2,24340 40a28: 10c00117 ldw r3,4(r2) 40a2c: 1809883a mov r4,r3 40a30: 0041dec0 call 41dec <__extendsfdf2> 40a34: 1009883a mov r4,r2 40a38: 180b883a mov r5,r3 40a3c: d9000015 stw r4,0(sp) 40a40: d9400115 stw r5,4(sp) 40a44: 800d883a mov r6,r16 40a48: 880f883a mov r7,r17 40a4c: e17ffc17 ldw r5,-16(fp) 40a50: 01000174 movhi r4,5 40a54: 21081004 addi r4,r4,8256 40a58: 00420880 call 42088 printf("rigth player lost"); 40a5c: 01000174 movhi r4,5 40a60: 21081704 addi r4,r4,8284 40a64: 00420880 call 42088 getchar(); 40a68: d0a00117 ldw r2,-32764(gp) 40a6c: 10800117 ldw r2,4(r2) 40a70: 1009883a mov r4,r2 40a74: 0041fd00 call 41fd0 reset_pos(); 40a78: 004049c0 call 4049c } } if (ball.x >= COLS - 2){ 40a7c: 00800174 movhi r2,5 40a80: 1097c504 addi r2,r2,24340 40a84: 10c00017 ldw r3,0(r2) 40a88: 01504834 movhi r5,16672 40a8c: 1809883a mov r4,r3 40a90: 004113c0 call 4113c <__gesf2> 40a94: 10003d16 blt r2,zero,40b8c if (ball.y >= right_paddle.y && ball.y <= (right_paddle.y + right_paddle.length -1)){ 40a98: 00800174 movhi r2,5 40a9c: 1097c504 addi r2,r2,24340 40aa0: 10c00117 ldw r3,4(r2) 40aa4: d0a71917 ldw r2,-25500(gp) 40aa8: 100b883a mov r5,r2 40aac: 1809883a mov r4,r3 40ab0: 004113c0 call 4113c <__gesf2> 40ab4: 10001716 blt r2,zero,40b14 40ab8: 00800174 movhi r2,5 40abc: 1097c504 addi r2,r2,24340 40ac0: 14400117 ldw r17,4(r2) 40ac4: d4271917 ldw r16,-25500(gp) 40ac8: d0a71a17 ldw r2,-25496(gp) 40acc: 1009883a mov r4,r2 40ad0: 00412c00 call 412c0 <__floatsisf> 40ad4: 1007883a mov r3,r2 40ad8: 80c7ff72 custom 253,r3,r16,r3 40adc: 008fe034 movhi r2,16256 40ae0: 1885ffb2 custom 254,r2,r3,r2 40ae4: 100b883a mov r5,r2 40ae8: 8809883a mov r4,r17 40aec: 00411f80 call 411f8 <__lesf2> 40af0: 00800816 blt zero,r2,40b14 ball.vel_x = - ball.vel_x; 40af4: 00800174 movhi r2,5 40af8: 1097c504 addi r2,r2,24340 40afc: 10c00217 ldw r3,8(r2) 40b00: 18e0003c xorhi r3,r3,32768 40b04: 00800174 movhi r2,5 40b08: 1097c504 addi r2,r2,24340 40b0c: 10c00215 stw r3,8(r2) 40b10: 00001e06 br 40b8c } else { printf("%d ,, ballx: %f, ball y: %f",k,ball.x,ball.y); 40b14: 00800174 movhi r2,5 40b18: 1097c504 addi r2,r2,24340 40b1c: 10c00017 ldw r3,0(r2) 40b20: 1809883a mov r4,r3 40b24: 0041dec0 call 41dec <__extendsfdf2> 40b28: 1021883a mov r16,r2 40b2c: 1823883a mov r17,r3 40b30: 00800174 movhi r2,5 40b34: 1097c504 addi r2,r2,24340 40b38: 10c00117 ldw r3,4(r2) 40b3c: 1809883a mov r4,r3 40b40: 0041dec0 call 41dec <__extendsfdf2> 40b44: 1009883a mov r4,r2 40b48: 180b883a mov r5,r3 40b4c: d9000015 stw r4,0(sp) 40b50: d9400115 stw r5,4(sp) 40b54: 800d883a mov r6,r16 40b58: 880f883a mov r7,r17 40b5c: e17ffc17 ldw r5,-16(fp) 40b60: 01000174 movhi r4,5 40b64: 21081004 addi r4,r4,8256 40b68: 00420880 call 42088 printf("left player lost"); 40b6c: 01000174 movhi r4,5 40b70: 21081c04 addi r4,r4,8304 40b74: 00420880 call 42088 getchar(); 40b78: d0a00117 ldw r2,-32764(gp) 40b7c: 10800117 ldw r2,4(r2) 40b80: 1009883a mov r4,r2 40b84: 0041fd00 call 41fd0 reset_pos(); 40b88: 004049c0 call 4049c } } if (ball.vel_x < 0) { 40b8c: 00800174 movhi r2,5 40b90: 1097c504 addi r2,r2,24340 40b94: 10c00217 ldw r3,8(r2) 40b98: 000b883a mov r5,zero 40b9c: 1809883a mov r4,r3 40ba0: 00411f80 call 411f8 <__lesf2> 40ba4: 10000a0e bge r2,zero,40bd0 ball.vel_x = ball.vel_x - ACCELERATION; 40ba8: 00800174 movhi r2,5 40bac: 1097c504 addi r2,r2,24340 40bb0: 10c00217 ldw r3,8(r2) 40bb4: 008f7374 movhi r2,15821 40bb8: 10b33344 addi r2,r2,-13107 40bbc: 1887ffb2 custom 254,r3,r3,r2 40bc0: 00800174 movhi r2,5 40bc4: 1097c504 addi r2,r2,24340 40bc8: 10c00215 stw r3,8(r2) 40bcc: 00000906 br 40bf4 } else { ball.vel_x = ball.vel_x + ACCELERATION; 40bd0: 00800174 movhi r2,5 40bd4: 1097c504 addi r2,r2,24340 40bd8: 10c00217 ldw r3,8(r2) 40bdc: 008f7374 movhi r2,15821 40be0: 10b33344 addi r2,r2,-13107 40be4: 1887ff72 custom 253,r3,r3,r2 40be8: 00800174 movhi r2,5 40bec: 1097c504 addi r2,r2,24340 40bf0: 10c00215 stw r3,8(r2) } if (ball.vel_y < 0) { 40bf4: 00800174 movhi r2,5 40bf8: 1097c504 addi r2,r2,24340 40bfc: 10c00317 ldw r3,12(r2) 40c00: 000b883a mov r5,zero 40c04: 1809883a mov r4,r3 40c08: 00411f80 call 411f8 <__lesf2> 40c0c: 10000a0e bge r2,zero,40c38 ball.vel_y = ball.vel_y - ACCELERATION; 40c10: 00800174 movhi r2,5 40c14: 1097c504 addi r2,r2,24340 40c18: 10c00317 ldw r3,12(r2) 40c1c: 008f7374 movhi r2,15821 40c20: 10b33344 addi r2,r2,-13107 40c24: 1887ffb2 custom 254,r3,r3,r2 40c28: 00800174 movhi r2,5 40c2c: 1097c504 addi r2,r2,24340 40c30: 10c00315 stw r3,12(r2) 40c34: 00000906 br 40c5c } else { ball.vel_y = ball.vel_y + ACCELERATION; 40c38: 00800174 movhi r2,5 40c3c: 1097c504 addi r2,r2,24340 40c40: 10c00317 ldw r3,12(r2) 40c44: 008f7374 movhi r2,15821 40c48: 10b33344 addi r2,r2,-13107 40c4c: 1887ff72 custom 253,r3,r3,r2 40c50: 00800174 movhi r2,5 40c54: 1097c504 addi r2,r2,24340 40c58: 10c00315 stw r3,12(r2) } reset_screen(); 40c5c: 004042c0 call 4042c for (i=0;i set_pixel( COLS - 1, round(left_paddle.y) + i); 40c68: d0a71717 ldw r2,-25508(gp) 40c6c: 1009883a mov r4,r2 40c70: 0041dec0 call 41dec <__extendsfdf2> 40c74: 100b883a mov r5,r2 40c78: 180d883a mov r6,r3 40c7c: 2809883a mov r4,r5 40c80: 300b883a mov r5,r6 40c84: 0040fc40 call 40fc4 40c88: 1021883a mov r16,r2 40c8c: 1823883a mov r17,r3 40c90: e13ffb17 ldw r4,-20(fp) 40c94: 0041d100 call 41d10 <__floatsidf> 40c98: 1009883a mov r4,r2 40c9c: 180b883a mov r5,r3 40ca0: 200d883a mov r6,r4 40ca4: 280f883a mov r7,r5 40ca8: 8009883a mov r4,r16 40cac: 880b883a mov r5,r17 40cb0: 00413e40 call 413e4 <__adddf3> 40cb4: 1009883a mov r4,r2 40cb8: 180b883a mov r5,r3 40cbc: 2005883a mov r2,r4 40cc0: 2807883a mov r3,r5 40cc4: 1009883a mov r4,r2 40cc8: 180b883a mov r5,r3 40ccc: 0041c900 call 41c90 <__fixdfsi> 40cd0: 100b883a mov r5,r2 40cd4: 010002c4 movi r4,11 40cd8: 00403bc0 call 403bc ball.vel_y = ball.vel_y + ACCELERATION; } reset_screen(); for (i=0;i set_pixel( COLS - 1, round(left_paddle.y) + i); } for (i=0;i set_pixel(0, round(right_paddle.y) + i); 40cfc: d0a71917 ldw r2,-25500(gp) 40d00: 1009883a mov r4,r2 40d04: 0041dec0 call 41dec <__extendsfdf2> 40d08: 100b883a mov r5,r2 40d0c: 180d883a mov r6,r3 40d10: 2809883a mov r4,r5 40d14: 300b883a mov r5,r6 40d18: 0040fc40 call 40fc4 40d1c: 1021883a mov r16,r2 40d20: 1823883a mov r17,r3 40d24: e13ffb17 ldw r4,-20(fp) 40d28: 0041d100 call 41d10 <__floatsidf> 40d2c: 1009883a mov r4,r2 40d30: 180b883a mov r5,r3 40d34: 200d883a mov r6,r4 40d38: 280f883a mov r7,r5 40d3c: 8009883a mov r4,r16 40d40: 880b883a mov r5,r17 40d44: 00413e40 call 413e4 <__adddf3> 40d48: 1009883a mov r4,r2 40d4c: 180b883a mov r5,r3 40d50: 2005883a mov r2,r4 40d54: 2807883a mov r3,r5 40d58: 1009883a mov r4,r2 40d5c: 180b883a mov r5,r3 40d60: 0041c900 call 41c90 <__fixdfsi> 40d64: 100b883a mov r5,r2 40d68: 0009883a mov r4,zero 40d6c: 00403bc0 call 403bc reset_screen(); for (i=0;i set_pixel(0, round(right_paddle.y) + i); } set_pixel(round(ball.x),round(ball.y)); 40d88: 00800174 movhi r2,5 40d8c: 1097c504 addi r2,r2,24340 40d90: 10c00017 ldw r3,0(r2) 40d94: 1809883a mov r4,r3 40d98: 0041dec0 call 41dec <__extendsfdf2> 40d9c: 100b883a mov r5,r2 40da0: 180d883a mov r6,r3 40da4: 2809883a mov r4,r5 40da8: 300b883a mov r5,r6 40dac: 0040fc40 call 40fc4 40db0: 100b883a mov r5,r2 40db4: 180d883a mov r6,r3 40db8: 2809883a mov r4,r5 40dbc: 300b883a mov r5,r6 40dc0: 0041c900 call 41c90 <__fixdfsi> 40dc4: 1021883a mov r16,r2 40dc8: 00800174 movhi r2,5 40dcc: 1097c504 addi r2,r2,24340 40dd0: 10c00117 ldw r3,4(r2) 40dd4: 1809883a mov r4,r3 40dd8: 0041dec0 call 41dec <__extendsfdf2> 40ddc: 100b883a mov r5,r2 40de0: 180d883a mov r6,r3 40de4: 2809883a mov r4,r5 40de8: 300b883a mov r5,r6 40dec: 0040fc40 call 40fc4 40df0: 100b883a mov r5,r2 40df4: 180d883a mov r6,r3 40df8: 2809883a mov r4,r5 40dfc: 300b883a mov r5,r6 40e00: 0041c900 call 41c90 <__fixdfsi> 40e04: 100b883a mov r5,r2 40e08: 8009883a mov r4,r16 40e0c: 00403bc0 call 403bc k++; 40e10: e0bffc17 ldw r2,-16(fp) 40e14: 10800044 addi r2,r2,1 40e18: e0bffc15 stw r2,-16(fp) draw(); 40e1c: 004026c0 call 4026c printf("%d ,, ballx: %f, ball y: %f",k,ball.x,ball.y); 40e20: 00800174 movhi r2,5 40e24: 1097c504 addi r2,r2,24340 40e28: 10c00017 ldw r3,0(r2) 40e2c: 1809883a mov r4,r3 40e30: 0041dec0 call 41dec <__extendsfdf2> 40e34: 1021883a mov r16,r2 40e38: 1823883a mov r17,r3 40e3c: 00800174 movhi r2,5 40e40: 1097c504 addi r2,r2,24340 40e44: 10c00117 ldw r3,4(r2) 40e48: 1809883a mov r4,r3 40e4c: 0041dec0 call 41dec <__extendsfdf2> 40e50: 1009883a mov r4,r2 40e54: 180b883a mov r5,r3 40e58: d9000015 stw r4,0(sp) 40e5c: d9400115 stw r5,4(sp) 40e60: 800d883a mov r6,r16 40e64: 880f883a mov r7,r17 40e68: e17ffc17 ldw r5,-16(fp) 40e6c: 01000174 movhi r4,5 40e70: 21081004 addi r4,r4,8256 40e74: 00420880 call 42088 //getchar(); //system("cls"); } 40e78: 003dae06 br 40534 <__alt_data_end+0xfffce534> 00040e7c : } void test_picture() { 40e7c: defffa04 addi sp,sp,-24 40e80: dfc00515 stw ra,20(sp) 40e84: df000415 stw fp,16(sp) 40e88: df000404 addi fp,sp,16 int i,j,k; unsigned buttons; while (1){ for (i=0;i for (j=0;j buttons = ~IORD_ALTERA_AVALON_PIO_DATA(PIO_BUTTON_BASE); 40e9c: 00800234 movhi r2,8 40ea0: 10841004 addi r2,r2,4160 40ea4: 10800037 ldwio r2,0(r2) 40ea8: 0084303a nor r2,zero,r2 40eac: e0bfff15 stw r2,-4(fp) printf("%d,%d, set\n",j,i); 40eb0: e1bffc17 ldw r6,-16(fp) 40eb4: e17ffd17 ldw r5,-12(fp) 40eb8: 01000174 movhi r4,5 40ebc: 21082104 addi r4,r4,8324 40ec0: 00420880 call 42088 if (buttons & (1< printf("left button up"); 40ed0: 01000174 movhi r4,5 40ed4: 21082404 addi r4,r4,8336 40ed8: 00420880 call 42088 } if (buttons & (1< printf("left button down"); 40ee8: 01000174 movhi r4,5 40eec: 21082804 addi r4,r4,8352 40ef0: 00420880 call 42088 } if (buttons & (1< printf("rigth button up"); 40f00: 01000174 movhi r4,5 40f04: 21082d04 addi r4,r4,8372 40f08: 00420880 call 42088 } if (buttons & (1< printf("rigth button down"); 40f18: 01000174 movhi r4,5 40f1c: 21083104 addi r4,r4,8388 40f20: 00420880 call 42088 } printf("\n"); 40f24: 01000284 movi r4,10 40f28: 00420cc0 call 420cc set_pixel(j,i); 40f2c: e17ffc17 ldw r5,-16(fp) 40f30: e13ffd17 ldw r4,-12(fp) 40f34: 00403bc0 call 403bc draw(); 40f38: 004026c0 call 4026c for(k=0;k<1000000;k++) { 40f3c: e03ffe15 stw zero,-8(fp) 40f40: 00000306 br 40f50 40f44: e0bffe17 ldw r2,-8(fp) 40f48: 10800044 addi r2,r2,1 40f4c: e0bffe15 stw r2,-8(fp) 40f50: e0fffe17 ldw r3,-8(fp) 40f54: 008003f4 movhi r2,15 40f58: 10908fc4 addi r2,r2,16959 40f5c: 10fff90e bge r2,r3,40f44 <__alt_data_end+0xfffcef44> void test_picture() { int i,j,k; unsigned buttons; while (1){ for (i=0;i void test_picture() { int i,j,k; unsigned buttons; while (1){ for (i=0;i draw(); for(k=0;k<1000000;k++) { } } } reset_screen(); 40f90: 004042c0 call 4042c } 40f94: 003fbd06 br 40e8c <__alt_data_end+0xfffcee8c> 00040f98
: } int main() { 40f98: defffe04 addi sp,sp,-8 40f9c: dfc00115 stw ra,4(sp) 40fa0: df000015 stw fp,0(sp) 40fa4: d839883a mov fp,sp test_picture(); 40fa8: 0040e7c0 call 40e7c 40fac: 0005883a mov r2,zero //game(); } 40fb0: e037883a mov sp,fp 40fb4: dfc00117 ldw ra,4(sp) 40fb8: df000017 ldw fp,0(sp) 40fbc: dec00204 addi sp,sp,8 40fc0: f800283a ret 00040fc4 : 40fc4: 289ffc2c andhi r2,r5,32752 40fc8: 1005d53a srai r2,r2,20 40fcc: 024004c4 movi r9,19 40fd0: 2807883a mov r3,r5 40fd4: 123f0044 addi r8,r2,-1023 40fd8: 200d883a mov r6,r4 40fdc: 280f883a mov r7,r5 40fe0: 4a000916 blt r9,r8,41008 40fe4: 40002516 blt r8,zero,4107c 40fe8: 00800434 movhi r2,16 40fec: 10bfffc4 addi r2,r2,-1 40ff0: 1205d83a sra r2,r2,r8 40ff4: 2888703a and r4,r5,r2 40ff8: 2000181e bne r4,zero,4105c 40ffc: 3000171e bne r6,zero,4105c 41000: 0005883a mov r2,zero 41004: f800283a ret 41008: 02400cc4 movi r9,51 4100c: 4a00040e bge r9,r8,41020 41010: 00810004 movi r2,1024 41014: 40802126 beq r8,r2,4109c 41018: 3005883a mov r2,r6 4101c: f800283a ret 41020: 013fffc4 movi r4,-1 41024: 10befb44 addi r2,r2,-1043 41028: 2084d83a srl r2,r4,r2 4102c: 3088703a and r4,r6,r2 41030: 20001726 beq r4,zero,41090 41034: 4a11c83a sub r8,r9,r8 41038: 02400044 movi r9,1 4103c: 4a10983a sll r8,r9,r8 41040: 4191883a add r8,r8,r6 41044: 4180012e bgeu r8,r6,4104c 41048: 2a47883a add r3,r5,r9 4104c: 0084303a nor r2,zero,r2 41050: 120c703a and r6,r2,r8 41054: 3005883a mov r2,r6 41058: f800283a ret 4105c: 00c00234 movhi r3,8 41060: 1a07d83a sra r3,r3,r8 41064: 0084303a nor r2,zero,r2 41068: 000d883a mov r6,zero 4106c: 19c7883a add r3,r3,r7 41070: 1886703a and r3,r3,r2 41074: 3005883a mov r2,r6 41078: f800283a ret 4107c: 00bfffc4 movi r2,-1 41080: 28e0002c andhi r3,r5,32768 41084: 40800c26 beq r8,r2,410b8 41088: 000d883a mov r6,zero 4108c: 003fe206 br 41018 <__alt_data_end+0xfffcf018> 41090: 3005883a mov r2,r6 41094: 2807883a mov r3,r5 41098: f800283a ret 4109c: deffff04 addi sp,sp,-4 410a0: 280f883a mov r7,r5 410a4: dfc00015 stw ra,0(sp) 410a8: 00413e40 call 413e4 <__adddf3> 410ac: dfc00017 ldw ra,0(sp) 410b0: dec00104 addi sp,sp,4 410b4: f800283a ret 410b8: 18cffc34 orhi r3,r3,16368 410bc: 000d883a mov r6,zero 410c0: 003fd506 br 41018 <__alt_data_end+0xfffcf018> 000410c4 <__eqsf2>: 410c4: 2006d5fa srli r3,r4,23 410c8: 280cd5fa srli r6,r5,23 410cc: 01c02034 movhi r7,128 410d0: 39ffffc4 addi r7,r7,-1 410d4: 18c03fcc andi r3,r3,255 410d8: 02003fc4 movi r8,255 410dc: 3904703a and r2,r7,r4 410e0: 31803fcc andi r6,r6,255 410e4: 394e703a and r7,r7,r5 410e8: 2008d7fa srli r4,r4,31 410ec: 280ad7fa srli r5,r5,31 410f0: 1a000d26 beq r3,r8,41128 <__eqsf2+0x64> 410f4: 02003fc4 movi r8,255 410f8: 32000826 beq r6,r8,4111c <__eqsf2+0x58> 410fc: 19800226 beq r3,r6,41108 <__eqsf2+0x44> 41100: 00800044 movi r2,1 41104: f800283a ret 41108: 11fffd1e bne r2,r7,41100 <__alt_data_end+0xfffcf100> 4110c: 21400926 beq r4,r5,41134 <__eqsf2+0x70> 41110: 183ffb1e bne r3,zero,41100 <__alt_data_end+0xfffcf100> 41114: 1004c03a cmpne r2,r2,zero 41118: f800283a ret 4111c: 383ff726 beq r7,zero,410fc <__alt_data_end+0xfffcf0fc> 41120: 00800044 movi r2,1 41124: f800283a ret 41128: 103ff226 beq r2,zero,410f4 <__alt_data_end+0xfffcf0f4> 4112c: 00800044 movi r2,1 41130: f800283a ret 41134: 0005883a mov r2,zero 41138: f800283a ret 0004113c <__gesf2>: 4113c: 2004d5fa srli r2,r4,23 41140: 2806d5fa srli r3,r5,23 41144: 01802034 movhi r6,128 41148: 31bfffc4 addi r6,r6,-1 4114c: 10803fcc andi r2,r2,255 41150: 01c03fc4 movi r7,255 41154: 3110703a and r8,r6,r4 41158: 18c03fcc andi r3,r3,255 4115c: 314c703a and r6,r6,r5 41160: 2008d7fa srli r4,r4,31 41164: 280ad7fa srli r5,r5,31 41168: 11c01926 beq r2,r7,411d0 <__gesf2+0x94> 4116c: 01c03fc4 movi r7,255 41170: 19c00f26 beq r3,r7,411b0 <__gesf2+0x74> 41174: 1000061e bne r2,zero,41190 <__gesf2+0x54> 41178: 400f003a cmpeq r7,r8,zero 4117c: 1800071e bne r3,zero,4119c <__gesf2+0x60> 41180: 3000061e bne r6,zero,4119c <__gesf2+0x60> 41184: 0005883a mov r2,zero 41188: 40000e1e bne r8,zero,411c4 <__gesf2+0x88> 4118c: f800283a ret 41190: 18000a1e bne r3,zero,411bc <__gesf2+0x80> 41194: 30000b26 beq r6,zero,411c4 <__gesf2+0x88> 41198: 000f883a mov r7,zero 4119c: 29403fcc andi r5,r5,255 411a0: 38000726 beq r7,zero,411c0 <__gesf2+0x84> 411a4: 28000826 beq r5,zero,411c8 <__gesf2+0x8c> 411a8: 00800044 movi r2,1 411ac: f800283a ret 411b0: 303ff026 beq r6,zero,41174 <__alt_data_end+0xfffcf174> 411b4: 00bfff84 movi r2,-2 411b8: f800283a ret 411bc: 29403fcc andi r5,r5,255 411c0: 21400526 beq r4,r5,411d8 <__gesf2+0x9c> 411c4: 203ff826 beq r4,zero,411a8 <__alt_data_end+0xfffcf1a8> 411c8: 00bfffc4 movi r2,-1 411cc: f800283a ret 411d0: 403fe626 beq r8,zero,4116c <__alt_data_end+0xfffcf16c> 411d4: 003ff706 br 411b4 <__alt_data_end+0xfffcf1b4> 411d8: 18bffa16 blt r3,r2,411c4 <__alt_data_end+0xfffcf1c4> 411dc: 10c00216 blt r2,r3,411e8 <__gesf2+0xac> 411e0: 323ff836 bltu r6,r8,411c4 <__alt_data_end+0xfffcf1c4> 411e4: 4180022e bgeu r8,r6,411f0 <__gesf2+0xb4> 411e8: 203fef1e bne r4,zero,411a8 <__alt_data_end+0xfffcf1a8> 411ec: 003ff606 br 411c8 <__alt_data_end+0xfffcf1c8> 411f0: 0005883a mov r2,zero 411f4: f800283a ret 000411f8 <__lesf2>: 411f8: 2004d5fa srli r2,r4,23 411fc: 280cd5fa srli r6,r5,23 41200: 00c02034 movhi r3,128 41204: 18ffffc4 addi r3,r3,-1 41208: 10803fcc andi r2,r2,255 4120c: 01c03fc4 movi r7,255 41210: 1910703a and r8,r3,r4 41214: 31803fcc andi r6,r6,255 41218: 1946703a and r3,r3,r5 4121c: 2008d7fa srli r4,r4,31 41220: 280ad7fa srli r5,r5,31 41224: 11c01b26 beq r2,r7,41294 <__lesf2+0x9c> 41228: 01c03fc4 movi r7,255 4122c: 31c01126 beq r6,r7,41274 <__lesf2+0x7c> 41230: 1000071e bne r2,zero,41250 <__lesf2+0x58> 41234: 400f003a cmpeq r7,r8,zero 41238: 21003fcc andi r4,r4,255 4123c: 3000081e bne r6,zero,41260 <__lesf2+0x68> 41240: 1800071e bne r3,zero,41260 <__lesf2+0x68> 41244: 0005883a mov r2,zero 41248: 40000f1e bne r8,zero,41288 <__lesf2+0x90> 4124c: f800283a ret 41250: 21003fcc andi r4,r4,255 41254: 30000a1e bne r6,zero,41280 <__lesf2+0x88> 41258: 18000b26 beq r3,zero,41288 <__lesf2+0x90> 4125c: 000f883a mov r7,zero 41260: 29403fcc andi r5,r5,255 41264: 38000726 beq r7,zero,41284 <__lesf2+0x8c> 41268: 28000826 beq r5,zero,4128c <__lesf2+0x94> 4126c: 00800044 movi r2,1 41270: f800283a ret 41274: 183fee26 beq r3,zero,41230 <__alt_data_end+0xfffcf230> 41278: 00800084 movi r2,2 4127c: f800283a ret 41280: 29403fcc andi r5,r5,255 41284: 21400626 beq r4,r5,412a0 <__lesf2+0xa8> 41288: 203ff826 beq r4,zero,4126c <__alt_data_end+0xfffcf26c> 4128c: 00bfffc4 movi r2,-1 41290: f800283a ret 41294: 403fe426 beq r8,zero,41228 <__alt_data_end+0xfffcf228> 41298: 00800084 movi r2,2 4129c: f800283a ret 412a0: 30bff916 blt r6,r2,41288 <__alt_data_end+0xfffcf288> 412a4: 11800216 blt r2,r6,412b0 <__lesf2+0xb8> 412a8: 1a3ff736 bltu r3,r8,41288 <__alt_data_end+0xfffcf288> 412ac: 40c0022e bgeu r8,r3,412b8 <__lesf2+0xc0> 412b0: 203fee1e bne r4,zero,4126c <__alt_data_end+0xfffcf26c> 412b4: 003ff506 br 4128c <__alt_data_end+0xfffcf28c> 412b8: 0005883a mov r2,zero 412bc: f800283a ret 000412c0 <__floatsisf>: 412c0: defffd04 addi sp,sp,-12 412c4: dfc00215 stw ra,8(sp) 412c8: dc400115 stw r17,4(sp) 412cc: dc000015 stw r16,0(sp) 412d0: 20003526 beq r4,zero,413a8 <__floatsisf+0xe8> 412d4: 2021883a mov r16,r4 412d8: 2022d7fa srli r17,r4,31 412dc: 20003616 blt r4,zero,413b8 <__floatsisf+0xf8> 412e0: 8009883a mov r4,r16 412e4: 0041efc0 call 41efc <__clzsi2> 412e8: 00c02784 movi r3,158 412ec: 1887c83a sub r3,r3,r2 412f0: 01002584 movi r4,150 412f4: 20c01416 blt r4,r3,41348 <__floatsisf+0x88> 412f8: 20c9c83a sub r4,r4,r3 412fc: 8120983a sll r16,r16,r4 41300: 00802034 movhi r2,128 41304: 10bfffc4 addi r2,r2,-1 41308: 8809883a mov r4,r17 4130c: 80a0703a and r16,r16,r2 41310: 18803fcc andi r2,r3,255 41314: 100695fa slli r3,r2,23 41318: 20803fcc andi r2,r4,255 4131c: 100897fa slli r4,r2,31 41320: 00802034 movhi r2,128 41324: 10bfffc4 addi r2,r2,-1 41328: 8084703a and r2,r16,r2 4132c: 10c4b03a or r2,r2,r3 41330: 1104b03a or r2,r2,r4 41334: dfc00217 ldw ra,8(sp) 41338: dc400117 ldw r17,4(sp) 4133c: dc000017 ldw r16,0(sp) 41340: dec00304 addi sp,sp,12 41344: f800283a ret 41348: 01002644 movi r4,153 4134c: 20c01c16 blt r4,r3,413c0 <__floatsisf+0x100> 41350: 20c9c83a sub r4,r4,r3 41354: 8120983a sll r16,r16,r4 41358: 013f0034 movhi r4,64512 4135c: 213fffc4 addi r4,r4,-1 41360: 814001cc andi r5,r16,7 41364: 8108703a and r4,r16,r4 41368: 28000426 beq r5,zero,4137c <__floatsisf+0xbc> 4136c: 840003cc andi r16,r16,15 41370: 01400104 movi r5,4 41374: 81400126 beq r16,r5,4137c <__floatsisf+0xbc> 41378: 2149883a add r4,r4,r5 4137c: 2141002c andhi r5,r4,1024 41380: 28000526 beq r5,zero,41398 <__floatsisf+0xd8> 41384: 00c027c4 movi r3,159 41388: 1887c83a sub r3,r3,r2 4138c: 00bf0034 movhi r2,64512 41390: 10bfffc4 addi r2,r2,-1 41394: 2088703a and r4,r4,r2 41398: 202091ba slli r16,r4,6 4139c: 8809883a mov r4,r17 413a0: 8020d27a srli r16,r16,9 413a4: 003fda06 br 41310 <__alt_data_end+0xfffcf310> 413a8: 0009883a mov r4,zero 413ac: 0007883a mov r3,zero 413b0: 0021883a mov r16,zero 413b4: 003fd606 br 41310 <__alt_data_end+0xfffcf310> 413b8: 0121c83a sub r16,zero,r4 413bc: 003fc806 br 412e0 <__alt_data_end+0xfffcf2e0> 413c0: 01002e44 movi r4,185 413c4: 20c9c83a sub r4,r4,r3 413c8: 01400144 movi r5,5 413cc: 8108983a sll r4,r16,r4 413d0: 288bc83a sub r5,r5,r2 413d4: 8160d83a srl r16,r16,r5 413d8: 2008c03a cmpne r4,r4,zero 413dc: 8120b03a or r16,r16,r4 413e0: 003fdd06 br 41358 <__alt_data_end+0xfffcf358> 000413e4 <__adddf3>: 413e4: 02c00434 movhi r11,16 413e8: 5affffc4 addi r11,r11,-1 413ec: 2806d7fa srli r3,r5,31 413f0: 2ad4703a and r10,r5,r11 413f4: 3ad2703a and r9,r7,r11 413f8: 3804d53a srli r2,r7,20 413fc: 3018d77a srli r12,r6,29 41400: 280ad53a srli r5,r5,20 41404: 501490fa slli r10,r10,3 41408: 2010d77a srli r8,r4,29 4140c: 481290fa slli r9,r9,3 41410: 380ed7fa srli r7,r7,31 41414: defffb04 addi sp,sp,-20 41418: dc800215 stw r18,8(sp) 4141c: dc400115 stw r17,4(sp) 41420: dc000015 stw r16,0(sp) 41424: dfc00415 stw ra,16(sp) 41428: dcc00315 stw r19,12(sp) 4142c: 1c803fcc andi r18,r3,255 41430: 2c01ffcc andi r16,r5,2047 41434: 5210b03a or r8,r10,r8 41438: 202290fa slli r17,r4,3 4143c: 1081ffcc andi r2,r2,2047 41440: 4b12b03a or r9,r9,r12 41444: 300c90fa slli r6,r6,3 41448: 91c07526 beq r18,r7,41620 <__adddf3+0x23c> 4144c: 8087c83a sub r3,r16,r2 41450: 00c0ab0e bge zero,r3,41700 <__adddf3+0x31c> 41454: 10002a1e bne r2,zero,41500 <__adddf3+0x11c> 41458: 4984b03a or r2,r9,r6 4145c: 1000961e bne r2,zero,416b8 <__adddf3+0x2d4> 41460: 888001cc andi r2,r17,7 41464: 10000726 beq r2,zero,41484 <__adddf3+0xa0> 41468: 888003cc andi r2,r17,15 4146c: 00c00104 movi r3,4 41470: 10c00426 beq r2,r3,41484 <__adddf3+0xa0> 41474: 88c7883a add r3,r17,r3 41478: 1c63803a cmpltu r17,r3,r17 4147c: 4451883a add r8,r8,r17 41480: 1823883a mov r17,r3 41484: 4080202c andhi r2,r8,128 41488: 10005926 beq r2,zero,415f0 <__adddf3+0x20c> 4148c: 84000044 addi r16,r16,1 41490: 0081ffc4 movi r2,2047 41494: 8080ba26 beq r16,r2,41780 <__adddf3+0x39c> 41498: 00bfe034 movhi r2,65408 4149c: 10bfffc4 addi r2,r2,-1 414a0: 4090703a and r8,r8,r2 414a4: 4004977a slli r2,r8,29 414a8: 4010927a slli r8,r8,9 414ac: 8822d0fa srli r17,r17,3 414b0: 8401ffcc andi r16,r16,2047 414b4: 4010d33a srli r8,r8,12 414b8: 9007883a mov r3,r18 414bc: 1444b03a or r2,r2,r17 414c0: 8401ffcc andi r16,r16,2047 414c4: 8020953a slli r16,r16,20 414c8: 18c03fcc andi r3,r3,255 414cc: 01000434 movhi r4,16 414d0: 213fffc4 addi r4,r4,-1 414d4: 180697fa slli r3,r3,31 414d8: 4110703a and r8,r8,r4 414dc: 4410b03a or r8,r8,r16 414e0: 40c6b03a or r3,r8,r3 414e4: dfc00417 ldw ra,16(sp) 414e8: dcc00317 ldw r19,12(sp) 414ec: dc800217 ldw r18,8(sp) 414f0: dc400117 ldw r17,4(sp) 414f4: dc000017 ldw r16,0(sp) 414f8: dec00504 addi sp,sp,20 414fc: f800283a ret 41500: 0081ffc4 movi r2,2047 41504: 80bfd626 beq r16,r2,41460 <__alt_data_end+0xfffcf460> 41508: 4a402034 orhi r9,r9,128 4150c: 00800e04 movi r2,56 41510: 10c09f16 blt r2,r3,41790 <__adddf3+0x3ac> 41514: 008007c4 movi r2,31 41518: 10c0c216 blt r2,r3,41824 <__adddf3+0x440> 4151c: 00800804 movi r2,32 41520: 10c5c83a sub r2,r2,r3 41524: 488a983a sll r5,r9,r2 41528: 30c8d83a srl r4,r6,r3 4152c: 3084983a sll r2,r6,r2 41530: 48c6d83a srl r3,r9,r3 41534: 290cb03a or r6,r5,r4 41538: 1004c03a cmpne r2,r2,zero 4153c: 308cb03a or r6,r6,r2 41540: 898dc83a sub r6,r17,r6 41544: 89a3803a cmpltu r17,r17,r6 41548: 40d1c83a sub r8,r8,r3 4154c: 4451c83a sub r8,r8,r17 41550: 3023883a mov r17,r6 41554: 4080202c andhi r2,r8,128 41558: 10002326 beq r2,zero,415e8 <__adddf3+0x204> 4155c: 04c02034 movhi r19,128 41560: 9cffffc4 addi r19,r19,-1 41564: 44e6703a and r19,r8,r19 41568: 98007626 beq r19,zero,41744 <__adddf3+0x360> 4156c: 9809883a mov r4,r19 41570: 0041efc0 call 41efc <__clzsi2> 41574: 10fffe04 addi r3,r2,-8 41578: 010007c4 movi r4,31 4157c: 20c07716 blt r4,r3,4175c <__adddf3+0x378> 41580: 00800804 movi r2,32 41584: 10c5c83a sub r2,r2,r3 41588: 8884d83a srl r2,r17,r2 4158c: 98d0983a sll r8,r19,r3 41590: 88e2983a sll r17,r17,r3 41594: 1204b03a or r2,r2,r8 41598: 1c007416 blt r3,r16,4176c <__adddf3+0x388> 4159c: 1c21c83a sub r16,r3,r16 415a0: 82000044 addi r8,r16,1 415a4: 00c007c4 movi r3,31 415a8: 1a009116 blt r3,r8,417f0 <__adddf3+0x40c> 415ac: 00c00804 movi r3,32 415b0: 1a07c83a sub r3,r3,r8 415b4: 8a08d83a srl r4,r17,r8 415b8: 88e2983a sll r17,r17,r3 415bc: 10c6983a sll r3,r2,r3 415c0: 1210d83a srl r8,r2,r8 415c4: 8804c03a cmpne r2,r17,zero 415c8: 1906b03a or r3,r3,r4 415cc: 18a2b03a or r17,r3,r2 415d0: 0021883a mov r16,zero 415d4: 003fa206 br 41460 <__alt_data_end+0xfffcf460> 415d8: 1890b03a or r8,r3,r2 415dc: 40017d26 beq r8,zero,41bd4 <__adddf3+0x7f0> 415e0: 1011883a mov r8,r2 415e4: 1823883a mov r17,r3 415e8: 888001cc andi r2,r17,7 415ec: 103f9e1e bne r2,zero,41468 <__alt_data_end+0xfffcf468> 415f0: 4004977a slli r2,r8,29 415f4: 8822d0fa srli r17,r17,3 415f8: 4010d0fa srli r8,r8,3 415fc: 9007883a mov r3,r18 41600: 1444b03a or r2,r2,r17 41604: 0101ffc4 movi r4,2047 41608: 81002426 beq r16,r4,4169c <__adddf3+0x2b8> 4160c: 8120703a and r16,r16,r4 41610: 01000434 movhi r4,16 41614: 213fffc4 addi r4,r4,-1 41618: 4110703a and r8,r8,r4 4161c: 003fa806 br 414c0 <__alt_data_end+0xfffcf4c0> 41620: 8089c83a sub r4,r16,r2 41624: 01005e0e bge zero,r4,417a0 <__adddf3+0x3bc> 41628: 10002b26 beq r2,zero,416d8 <__adddf3+0x2f4> 4162c: 0081ffc4 movi r2,2047 41630: 80bf8b26 beq r16,r2,41460 <__alt_data_end+0xfffcf460> 41634: 4a402034 orhi r9,r9,128 41638: 00800e04 movi r2,56 4163c: 1100a40e bge r2,r4,418d0 <__adddf3+0x4ec> 41640: 498cb03a or r6,r9,r6 41644: 300ac03a cmpne r5,r6,zero 41648: 0013883a mov r9,zero 4164c: 2c4b883a add r5,r5,r17 41650: 2c63803a cmpltu r17,r5,r17 41654: 4a11883a add r8,r9,r8 41658: 8a11883a add r8,r17,r8 4165c: 2823883a mov r17,r5 41660: 4080202c andhi r2,r8,128 41664: 103fe026 beq r2,zero,415e8 <__alt_data_end+0xfffcf5e8> 41668: 84000044 addi r16,r16,1 4166c: 0081ffc4 movi r2,2047 41670: 8080d226 beq r16,r2,419bc <__adddf3+0x5d8> 41674: 00bfe034 movhi r2,65408 41678: 10bfffc4 addi r2,r2,-1 4167c: 4090703a and r8,r8,r2 41680: 880ad07a srli r5,r17,1 41684: 400897fa slli r4,r8,31 41688: 88c0004c andi r3,r17,1 4168c: 28e2b03a or r17,r5,r3 41690: 4010d07a srli r8,r8,1 41694: 2462b03a or r17,r4,r17 41698: 003f7106 br 41460 <__alt_data_end+0xfffcf460> 4169c: 4088b03a or r4,r8,r2 416a0: 20014526 beq r4,zero,41bb8 <__adddf3+0x7d4> 416a4: 01000434 movhi r4,16 416a8: 42000234 orhi r8,r8,8 416ac: 213fffc4 addi r4,r4,-1 416b0: 4110703a and r8,r8,r4 416b4: 003f8206 br 414c0 <__alt_data_end+0xfffcf4c0> 416b8: 18ffffc4 addi r3,r3,-1 416bc: 1800491e bne r3,zero,417e4 <__adddf3+0x400> 416c0: 898bc83a sub r5,r17,r6 416c4: 8963803a cmpltu r17,r17,r5 416c8: 4251c83a sub r8,r8,r9 416cc: 4451c83a sub r8,r8,r17 416d0: 2823883a mov r17,r5 416d4: 003f9f06 br 41554 <__alt_data_end+0xfffcf554> 416d8: 4984b03a or r2,r9,r6 416dc: 103f6026 beq r2,zero,41460 <__alt_data_end+0xfffcf460> 416e0: 213fffc4 addi r4,r4,-1 416e4: 2000931e bne r4,zero,41934 <__adddf3+0x550> 416e8: 898d883a add r6,r17,r6 416ec: 3463803a cmpltu r17,r6,r17 416f0: 4251883a add r8,r8,r9 416f4: 8a11883a add r8,r17,r8 416f8: 3023883a mov r17,r6 416fc: 003fd806 br 41660 <__alt_data_end+0xfffcf660> 41700: 1800541e bne r3,zero,41854 <__adddf3+0x470> 41704: 80800044 addi r2,r16,1 41708: 1081ffcc andi r2,r2,2047 4170c: 00c00044 movi r3,1 41710: 1880a00e bge r3,r2,41994 <__adddf3+0x5b0> 41714: 8989c83a sub r4,r17,r6 41718: 8905803a cmpltu r2,r17,r4 4171c: 4267c83a sub r19,r8,r9 41720: 98a7c83a sub r19,r19,r2 41724: 9880202c andhi r2,r19,128 41728: 10006326 beq r2,zero,418b8 <__adddf3+0x4d4> 4172c: 3463c83a sub r17,r6,r17 41730: 4a07c83a sub r3,r9,r8 41734: 344d803a cmpltu r6,r6,r17 41738: 19a7c83a sub r19,r3,r6 4173c: 3825883a mov r18,r7 41740: 983f8a1e bne r19,zero,4156c <__alt_data_end+0xfffcf56c> 41744: 8809883a mov r4,r17 41748: 0041efc0 call 41efc <__clzsi2> 4174c: 10800804 addi r2,r2,32 41750: 10fffe04 addi r3,r2,-8 41754: 010007c4 movi r4,31 41758: 20ff890e bge r4,r3,41580 <__alt_data_end+0xfffcf580> 4175c: 10bff604 addi r2,r2,-40 41760: 8884983a sll r2,r17,r2 41764: 0023883a mov r17,zero 41768: 1c3f8c0e bge r3,r16,4159c <__alt_data_end+0xfffcf59c> 4176c: 023fe034 movhi r8,65408 41770: 423fffc4 addi r8,r8,-1 41774: 80e1c83a sub r16,r16,r3 41778: 1210703a and r8,r2,r8 4177c: 003f3806 br 41460 <__alt_data_end+0xfffcf460> 41780: 9007883a mov r3,r18 41784: 0011883a mov r8,zero 41788: 0005883a mov r2,zero 4178c: 003f4c06 br 414c0 <__alt_data_end+0xfffcf4c0> 41790: 498cb03a or r6,r9,r6 41794: 300cc03a cmpne r6,r6,zero 41798: 0007883a mov r3,zero 4179c: 003f6806 br 41540 <__alt_data_end+0xfffcf540> 417a0: 20009c1e bne r4,zero,41a14 <__adddf3+0x630> 417a4: 80800044 addi r2,r16,1 417a8: 1141ffcc andi r5,r2,2047 417ac: 01000044 movi r4,1 417b0: 2140670e bge r4,r5,41950 <__adddf3+0x56c> 417b4: 0101ffc4 movi r4,2047 417b8: 11007f26 beq r2,r4,419b8 <__adddf3+0x5d4> 417bc: 898d883a add r6,r17,r6 417c0: 4247883a add r3,r8,r9 417c4: 3451803a cmpltu r8,r6,r17 417c8: 40d1883a add r8,r8,r3 417cc: 402297fa slli r17,r8,31 417d0: 300cd07a srli r6,r6,1 417d4: 4010d07a srli r8,r8,1 417d8: 1021883a mov r16,r2 417dc: 89a2b03a or r17,r17,r6 417e0: 003f1f06 br 41460 <__alt_data_end+0xfffcf460> 417e4: 0081ffc4 movi r2,2047 417e8: 80bf481e bne r16,r2,4150c <__alt_data_end+0xfffcf50c> 417ec: 003f1c06 br 41460 <__alt_data_end+0xfffcf460> 417f0: 843ff844 addi r16,r16,-31 417f4: 01000804 movi r4,32 417f8: 1406d83a srl r3,r2,r16 417fc: 41005026 beq r8,r4,41940 <__adddf3+0x55c> 41800: 01001004 movi r4,64 41804: 2211c83a sub r8,r4,r8 41808: 1204983a sll r2,r2,r8 4180c: 88a2b03a or r17,r17,r2 41810: 8822c03a cmpne r17,r17,zero 41814: 1c62b03a or r17,r3,r17 41818: 0011883a mov r8,zero 4181c: 0021883a mov r16,zero 41820: 003f7106 br 415e8 <__alt_data_end+0xfffcf5e8> 41824: 193ff804 addi r4,r3,-32 41828: 00800804 movi r2,32 4182c: 4908d83a srl r4,r9,r4 41830: 18804526 beq r3,r2,41948 <__adddf3+0x564> 41834: 00801004 movi r2,64 41838: 10c5c83a sub r2,r2,r3 4183c: 4886983a sll r3,r9,r2 41840: 198cb03a or r6,r3,r6 41844: 300cc03a cmpne r6,r6,zero 41848: 218cb03a or r6,r4,r6 4184c: 0007883a mov r3,zero 41850: 003f3b06 br 41540 <__alt_data_end+0xfffcf540> 41854: 80002a26 beq r16,zero,41900 <__adddf3+0x51c> 41858: 0101ffc4 movi r4,2047 4185c: 11006826 beq r2,r4,41a00 <__adddf3+0x61c> 41860: 00c7c83a sub r3,zero,r3 41864: 42002034 orhi r8,r8,128 41868: 01000e04 movi r4,56 4186c: 20c07c16 blt r4,r3,41a60 <__adddf3+0x67c> 41870: 010007c4 movi r4,31 41874: 20c0da16 blt r4,r3,41be0 <__adddf3+0x7fc> 41878: 01000804 movi r4,32 4187c: 20c9c83a sub r4,r4,r3 41880: 4114983a sll r10,r8,r4 41884: 88cad83a srl r5,r17,r3 41888: 8908983a sll r4,r17,r4 4188c: 40c6d83a srl r3,r8,r3 41890: 5162b03a or r17,r10,r5 41894: 2008c03a cmpne r4,r4,zero 41898: 8922b03a or r17,r17,r4 4189c: 3463c83a sub r17,r6,r17 418a0: 48c7c83a sub r3,r9,r3 418a4: 344d803a cmpltu r6,r6,r17 418a8: 1991c83a sub r8,r3,r6 418ac: 1021883a mov r16,r2 418b0: 3825883a mov r18,r7 418b4: 003f2706 br 41554 <__alt_data_end+0xfffcf554> 418b8: 24d0b03a or r8,r4,r19 418bc: 40001b1e bne r8,zero,4192c <__adddf3+0x548> 418c0: 0005883a mov r2,zero 418c4: 0007883a mov r3,zero 418c8: 0021883a mov r16,zero 418cc: 003f4d06 br 41604 <__alt_data_end+0xfffcf604> 418d0: 008007c4 movi r2,31 418d4: 11003c16 blt r2,r4,419c8 <__adddf3+0x5e4> 418d8: 00800804 movi r2,32 418dc: 1105c83a sub r2,r2,r4 418e0: 488e983a sll r7,r9,r2 418e4: 310ad83a srl r5,r6,r4 418e8: 3084983a sll r2,r6,r2 418ec: 4912d83a srl r9,r9,r4 418f0: 394ab03a or r5,r7,r5 418f4: 1004c03a cmpne r2,r2,zero 418f8: 288ab03a or r5,r5,r2 418fc: 003f5306 br 4164c <__alt_data_end+0xfffcf64c> 41900: 4448b03a or r4,r8,r17 41904: 20003e26 beq r4,zero,41a00 <__adddf3+0x61c> 41908: 00c6303a nor r3,zero,r3 4190c: 18003a1e bne r3,zero,419f8 <__adddf3+0x614> 41910: 3463c83a sub r17,r6,r17 41914: 4a07c83a sub r3,r9,r8 41918: 344d803a cmpltu r6,r6,r17 4191c: 1991c83a sub r8,r3,r6 41920: 1021883a mov r16,r2 41924: 3825883a mov r18,r7 41928: 003f0a06 br 41554 <__alt_data_end+0xfffcf554> 4192c: 2023883a mov r17,r4 41930: 003f0d06 br 41568 <__alt_data_end+0xfffcf568> 41934: 0081ffc4 movi r2,2047 41938: 80bf3f1e bne r16,r2,41638 <__alt_data_end+0xfffcf638> 4193c: 003ec806 br 41460 <__alt_data_end+0xfffcf460> 41940: 0005883a mov r2,zero 41944: 003fb106 br 4180c <__alt_data_end+0xfffcf80c> 41948: 0007883a mov r3,zero 4194c: 003fbc06 br 41840 <__alt_data_end+0xfffcf840> 41950: 4444b03a or r2,r8,r17 41954: 8000871e bne r16,zero,41b74 <__adddf3+0x790> 41958: 1000ba26 beq r2,zero,41c44 <__adddf3+0x860> 4195c: 4984b03a or r2,r9,r6 41960: 103ebf26 beq r2,zero,41460 <__alt_data_end+0xfffcf460> 41964: 8985883a add r2,r17,r6 41968: 4247883a add r3,r8,r9 4196c: 1451803a cmpltu r8,r2,r17 41970: 40d1883a add r8,r8,r3 41974: 40c0202c andhi r3,r8,128 41978: 1023883a mov r17,r2 4197c: 183f1a26 beq r3,zero,415e8 <__alt_data_end+0xfffcf5e8> 41980: 00bfe034 movhi r2,65408 41984: 10bfffc4 addi r2,r2,-1 41988: 2021883a mov r16,r4 4198c: 4090703a and r8,r8,r2 41990: 003eb306 br 41460 <__alt_data_end+0xfffcf460> 41994: 4444b03a or r2,r8,r17 41998: 8000291e bne r16,zero,41a40 <__adddf3+0x65c> 4199c: 10004b1e bne r2,zero,41acc <__adddf3+0x6e8> 419a0: 4990b03a or r8,r9,r6 419a4: 40008b26 beq r8,zero,41bd4 <__adddf3+0x7f0> 419a8: 4811883a mov r8,r9 419ac: 3023883a mov r17,r6 419b0: 3825883a mov r18,r7 419b4: 003eaa06 br 41460 <__alt_data_end+0xfffcf460> 419b8: 1021883a mov r16,r2 419bc: 0011883a mov r8,zero 419c0: 0005883a mov r2,zero 419c4: 003f0f06 br 41604 <__alt_data_end+0xfffcf604> 419c8: 217ff804 addi r5,r4,-32 419cc: 00800804 movi r2,32 419d0: 494ad83a srl r5,r9,r5 419d4: 20807d26 beq r4,r2,41bcc <__adddf3+0x7e8> 419d8: 00801004 movi r2,64 419dc: 1109c83a sub r4,r2,r4 419e0: 4912983a sll r9,r9,r4 419e4: 498cb03a or r6,r9,r6 419e8: 300cc03a cmpne r6,r6,zero 419ec: 298ab03a or r5,r5,r6 419f0: 0013883a mov r9,zero 419f4: 003f1506 br 4164c <__alt_data_end+0xfffcf64c> 419f8: 0101ffc4 movi r4,2047 419fc: 113f9a1e bne r2,r4,41868 <__alt_data_end+0xfffcf868> 41a00: 4811883a mov r8,r9 41a04: 3023883a mov r17,r6 41a08: 1021883a mov r16,r2 41a0c: 3825883a mov r18,r7 41a10: 003e9306 br 41460 <__alt_data_end+0xfffcf460> 41a14: 8000161e bne r16,zero,41a70 <__adddf3+0x68c> 41a18: 444ab03a or r5,r8,r17 41a1c: 28005126 beq r5,zero,41b64 <__adddf3+0x780> 41a20: 0108303a nor r4,zero,r4 41a24: 20004d1e bne r4,zero,41b5c <__adddf3+0x778> 41a28: 89a3883a add r17,r17,r6 41a2c: 4253883a add r9,r8,r9 41a30: 898d803a cmpltu r6,r17,r6 41a34: 3251883a add r8,r6,r9 41a38: 1021883a mov r16,r2 41a3c: 003f0806 br 41660 <__alt_data_end+0xfffcf660> 41a40: 1000301e bne r2,zero,41b04 <__adddf3+0x720> 41a44: 4984b03a or r2,r9,r6 41a48: 10007126 beq r2,zero,41c10 <__adddf3+0x82c> 41a4c: 4811883a mov r8,r9 41a50: 3023883a mov r17,r6 41a54: 3825883a mov r18,r7 41a58: 0401ffc4 movi r16,2047 41a5c: 003e8006 br 41460 <__alt_data_end+0xfffcf460> 41a60: 4462b03a or r17,r8,r17 41a64: 8822c03a cmpne r17,r17,zero 41a68: 0007883a mov r3,zero 41a6c: 003f8b06 br 4189c <__alt_data_end+0xfffcf89c> 41a70: 0141ffc4 movi r5,2047 41a74: 11403b26 beq r2,r5,41b64 <__adddf3+0x780> 41a78: 0109c83a sub r4,zero,r4 41a7c: 42002034 orhi r8,r8,128 41a80: 01400e04 movi r5,56 41a84: 29006716 blt r5,r4,41c24 <__adddf3+0x840> 41a88: 014007c4 movi r5,31 41a8c: 29007016 blt r5,r4,41c50 <__adddf3+0x86c> 41a90: 01400804 movi r5,32 41a94: 290bc83a sub r5,r5,r4 41a98: 4154983a sll r10,r8,r5 41a9c: 890ed83a srl r7,r17,r4 41aa0: 894a983a sll r5,r17,r5 41aa4: 4108d83a srl r4,r8,r4 41aa8: 51e2b03a or r17,r10,r7 41aac: 280ac03a cmpne r5,r5,zero 41ab0: 8962b03a or r17,r17,r5 41ab4: 89a3883a add r17,r17,r6 41ab8: 2253883a add r9,r4,r9 41abc: 898d803a cmpltu r6,r17,r6 41ac0: 3251883a add r8,r6,r9 41ac4: 1021883a mov r16,r2 41ac8: 003ee506 br 41660 <__alt_data_end+0xfffcf660> 41acc: 4984b03a or r2,r9,r6 41ad0: 103e6326 beq r2,zero,41460 <__alt_data_end+0xfffcf460> 41ad4: 8987c83a sub r3,r17,r6 41ad8: 88c9803a cmpltu r4,r17,r3 41adc: 4245c83a sub r2,r8,r9 41ae0: 1105c83a sub r2,r2,r4 41ae4: 1100202c andhi r4,r2,128 41ae8: 203ebb26 beq r4,zero,415d8 <__alt_data_end+0xfffcf5d8> 41aec: 3463c83a sub r17,r6,r17 41af0: 4a07c83a sub r3,r9,r8 41af4: 344d803a cmpltu r6,r6,r17 41af8: 1991c83a sub r8,r3,r6 41afc: 3825883a mov r18,r7 41b00: 003e5706 br 41460 <__alt_data_end+0xfffcf460> 41b04: 4984b03a or r2,r9,r6 41b08: 10002e26 beq r2,zero,41bc4 <__adddf3+0x7e0> 41b0c: 4004d0fa srli r2,r8,3 41b10: 8822d0fa srli r17,r17,3 41b14: 4010977a slli r8,r8,29 41b18: 10c0022c andhi r3,r2,8 41b1c: 4462b03a or r17,r8,r17 41b20: 18000826 beq r3,zero,41b44 <__adddf3+0x760> 41b24: 4808d0fa srli r4,r9,3 41b28: 20c0022c andhi r3,r4,8 41b2c: 1800051e bne r3,zero,41b44 <__adddf3+0x760> 41b30: 300cd0fa srli r6,r6,3 41b34: 4806977a slli r3,r9,29 41b38: 2005883a mov r2,r4 41b3c: 3825883a mov r18,r7 41b40: 19a2b03a or r17,r3,r6 41b44: 8810d77a srli r8,r17,29 41b48: 100490fa slli r2,r2,3 41b4c: 882290fa slli r17,r17,3 41b50: 0401ffc4 movi r16,2047 41b54: 4090b03a or r8,r8,r2 41b58: 003e4106 br 41460 <__alt_data_end+0xfffcf460> 41b5c: 0141ffc4 movi r5,2047 41b60: 117fc71e bne r2,r5,41a80 <__alt_data_end+0xfffcfa80> 41b64: 4811883a mov r8,r9 41b68: 3023883a mov r17,r6 41b6c: 1021883a mov r16,r2 41b70: 003e3b06 br 41460 <__alt_data_end+0xfffcf460> 41b74: 10002f26 beq r2,zero,41c34 <__adddf3+0x850> 41b78: 4984b03a or r2,r9,r6 41b7c: 10001126 beq r2,zero,41bc4 <__adddf3+0x7e0> 41b80: 4004d0fa srli r2,r8,3 41b84: 8822d0fa srli r17,r17,3 41b88: 4010977a slli r8,r8,29 41b8c: 10c0022c andhi r3,r2,8 41b90: 4462b03a or r17,r8,r17 41b94: 183feb26 beq r3,zero,41b44 <__alt_data_end+0xfffcfb44> 41b98: 4808d0fa srli r4,r9,3 41b9c: 20c0022c andhi r3,r4,8 41ba0: 183fe81e bne r3,zero,41b44 <__alt_data_end+0xfffcfb44> 41ba4: 300cd0fa srli r6,r6,3 41ba8: 4806977a slli r3,r9,29 41bac: 2005883a mov r2,r4 41bb0: 19a2b03a or r17,r3,r6 41bb4: 003fe306 br 41b44 <__alt_data_end+0xfffcfb44> 41bb8: 0011883a mov r8,zero 41bbc: 0005883a mov r2,zero 41bc0: 003e3f06 br 414c0 <__alt_data_end+0xfffcf4c0> 41bc4: 0401ffc4 movi r16,2047 41bc8: 003e2506 br 41460 <__alt_data_end+0xfffcf460> 41bcc: 0013883a mov r9,zero 41bd0: 003f8406 br 419e4 <__alt_data_end+0xfffcf9e4> 41bd4: 0005883a mov r2,zero 41bd8: 0007883a mov r3,zero 41bdc: 003e8906 br 41604 <__alt_data_end+0xfffcf604> 41be0: 197ff804 addi r5,r3,-32 41be4: 01000804 movi r4,32 41be8: 414ad83a srl r5,r8,r5 41bec: 19002426 beq r3,r4,41c80 <__adddf3+0x89c> 41bf0: 01001004 movi r4,64 41bf4: 20c7c83a sub r3,r4,r3 41bf8: 40c6983a sll r3,r8,r3 41bfc: 1c46b03a or r3,r3,r17 41c00: 1806c03a cmpne r3,r3,zero 41c04: 28e2b03a or r17,r5,r3 41c08: 0007883a mov r3,zero 41c0c: 003f2306 br 4189c <__alt_data_end+0xfffcf89c> 41c10: 0007883a mov r3,zero 41c14: 5811883a mov r8,r11 41c18: 00bfffc4 movi r2,-1 41c1c: 0401ffc4 movi r16,2047 41c20: 003e7806 br 41604 <__alt_data_end+0xfffcf604> 41c24: 4462b03a or r17,r8,r17 41c28: 8822c03a cmpne r17,r17,zero 41c2c: 0009883a mov r4,zero 41c30: 003fa006 br 41ab4 <__alt_data_end+0xfffcfab4> 41c34: 4811883a mov r8,r9 41c38: 3023883a mov r17,r6 41c3c: 0401ffc4 movi r16,2047 41c40: 003e0706 br 41460 <__alt_data_end+0xfffcf460> 41c44: 4811883a mov r8,r9 41c48: 3023883a mov r17,r6 41c4c: 003e0406 br 41460 <__alt_data_end+0xfffcf460> 41c50: 21fff804 addi r7,r4,-32 41c54: 01400804 movi r5,32 41c58: 41ced83a srl r7,r8,r7 41c5c: 21400a26 beq r4,r5,41c88 <__adddf3+0x8a4> 41c60: 01401004 movi r5,64 41c64: 2909c83a sub r4,r5,r4 41c68: 4108983a sll r4,r8,r4 41c6c: 2448b03a or r4,r4,r17 41c70: 2008c03a cmpne r4,r4,zero 41c74: 3922b03a or r17,r7,r4 41c78: 0009883a mov r4,zero 41c7c: 003f8d06 br 41ab4 <__alt_data_end+0xfffcfab4> 41c80: 0007883a mov r3,zero 41c84: 003fdd06 br 41bfc <__alt_data_end+0xfffcfbfc> 41c88: 0009883a mov r4,zero 41c8c: 003ff706 br 41c6c <__alt_data_end+0xfffcfc6c> 00041c90 <__fixdfsi>: 41c90: 280cd53a srli r6,r5,20 41c94: 00c00434 movhi r3,16 41c98: 18ffffc4 addi r3,r3,-1 41c9c: 3181ffcc andi r6,r6,2047 41ca0: 01c0ff84 movi r7,1022 41ca4: 28c6703a and r3,r5,r3 41ca8: 280ad7fa srli r5,r5,31 41cac: 3980120e bge r7,r6,41cf8 <__fixdfsi+0x68> 41cb0: 00810744 movi r2,1053 41cb4: 11800c16 blt r2,r6,41ce8 <__fixdfsi+0x58> 41cb8: 00810cc4 movi r2,1075 41cbc: 1185c83a sub r2,r2,r6 41cc0: 01c007c4 movi r7,31 41cc4: 18c00434 orhi r3,r3,16 41cc8: 38800d16 blt r7,r2,41d00 <__fixdfsi+0x70> 41ccc: 31befb44 addi r6,r6,-1043 41cd0: 2084d83a srl r2,r4,r2 41cd4: 1986983a sll r3,r3,r6 41cd8: 1884b03a or r2,r3,r2 41cdc: 28000726 beq r5,zero,41cfc <__fixdfsi+0x6c> 41ce0: 0085c83a sub r2,zero,r2 41ce4: f800283a ret 41ce8: 00a00034 movhi r2,32768 41cec: 10bfffc4 addi r2,r2,-1 41cf0: 2885883a add r2,r5,r2 41cf4: f800283a ret 41cf8: 0005883a mov r2,zero 41cfc: f800283a ret 41d00: 008104c4 movi r2,1043 41d04: 1185c83a sub r2,r2,r6 41d08: 1884d83a srl r2,r3,r2 41d0c: 003ff306 br 41cdc <__alt_data_end+0xfffcfcdc> 00041d10 <__floatsidf>: 41d10: defffd04 addi sp,sp,-12 41d14: dfc00215 stw ra,8(sp) 41d18: dc400115 stw r17,4(sp) 41d1c: dc000015 stw r16,0(sp) 41d20: 20002b26 beq r4,zero,41dd0 <__floatsidf+0xc0> 41d24: 2023883a mov r17,r4 41d28: 2020d7fa srli r16,r4,31 41d2c: 20002d16 blt r4,zero,41de4 <__floatsidf+0xd4> 41d30: 8809883a mov r4,r17 41d34: 0041efc0 call 41efc <__clzsi2> 41d38: 01410784 movi r5,1054 41d3c: 288bc83a sub r5,r5,r2 41d40: 01010cc4 movi r4,1075 41d44: 2149c83a sub r4,r4,r5 41d48: 00c007c4 movi r3,31 41d4c: 1900160e bge r3,r4,41da8 <__floatsidf+0x98> 41d50: 00c104c4 movi r3,1043 41d54: 1947c83a sub r3,r3,r5 41d58: 88c6983a sll r3,r17,r3 41d5c: 00800434 movhi r2,16 41d60: 10bfffc4 addi r2,r2,-1 41d64: 1886703a and r3,r3,r2 41d68: 2941ffcc andi r5,r5,2047 41d6c: 800d883a mov r6,r16 41d70: 0005883a mov r2,zero 41d74: 280a953a slli r5,r5,20 41d78: 31803fcc andi r6,r6,255 41d7c: 01000434 movhi r4,16 41d80: 300c97fa slli r6,r6,31 41d84: 213fffc4 addi r4,r4,-1 41d88: 1906703a and r3,r3,r4 41d8c: 1946b03a or r3,r3,r5 41d90: 1986b03a or r3,r3,r6 41d94: dfc00217 ldw ra,8(sp) 41d98: dc400117 ldw r17,4(sp) 41d9c: dc000017 ldw r16,0(sp) 41da0: dec00304 addi sp,sp,12 41da4: f800283a ret 41da8: 00c002c4 movi r3,11 41dac: 1887c83a sub r3,r3,r2 41db0: 88c6d83a srl r3,r17,r3 41db4: 8904983a sll r2,r17,r4 41db8: 01000434 movhi r4,16 41dbc: 213fffc4 addi r4,r4,-1 41dc0: 2941ffcc andi r5,r5,2047 41dc4: 1906703a and r3,r3,r4 41dc8: 800d883a mov r6,r16 41dcc: 003fe906 br 41d74 <__alt_data_end+0xfffcfd74> 41dd0: 000d883a mov r6,zero 41dd4: 000b883a mov r5,zero 41dd8: 0007883a mov r3,zero 41ddc: 0005883a mov r2,zero 41de0: 003fe406 br 41d74 <__alt_data_end+0xfffcfd74> 41de4: 0123c83a sub r17,zero,r4 41de8: 003fd106 br 41d30 <__alt_data_end+0xfffcfd30> 00041dec <__extendsfdf2>: 41dec: 200ad5fa srli r5,r4,23 41df0: defffd04 addi sp,sp,-12 41df4: dc400115 stw r17,4(sp) 41df8: 29403fcc andi r5,r5,255 41dfc: 29800044 addi r6,r5,1 41e00: 04402034 movhi r17,128 41e04: dc000015 stw r16,0(sp) 41e08: 8c7fffc4 addi r17,r17,-1 41e0c: dfc00215 stw ra,8(sp) 41e10: 31803fcc andi r6,r6,255 41e14: 00800044 movi r2,1 41e18: 8922703a and r17,r17,r4 41e1c: 2020d7fa srli r16,r4,31 41e20: 1180110e bge r2,r6,41e68 <__extendsfdf2+0x7c> 41e24: 880cd0fa srli r6,r17,3 41e28: 8822977a slli r17,r17,29 41e2c: 2940e004 addi r5,r5,896 41e30: 2941ffcc andi r5,r5,2047 41e34: 2804953a slli r2,r5,20 41e38: 01400434 movhi r5,16 41e3c: 800697fa slli r3,r16,31 41e40: 297fffc4 addi r5,r5,-1 41e44: 314a703a and r5,r6,r5 41e48: 288ab03a or r5,r5,r2 41e4c: 28c6b03a or r3,r5,r3 41e50: 8805883a mov r2,r17 41e54: dfc00217 ldw ra,8(sp) 41e58: dc400117 ldw r17,4(sp) 41e5c: dc000017 ldw r16,0(sp) 41e60: dec00304 addi sp,sp,12 41e64: f800283a ret 41e68: 2800111e bne r5,zero,41eb0 <__extendsfdf2+0xc4> 41e6c: 88001c26 beq r17,zero,41ee0 <__extendsfdf2+0xf4> 41e70: 8809883a mov r4,r17 41e74: 0041efc0 call 41efc <__clzsi2> 41e78: 00c00284 movi r3,10 41e7c: 18801b16 blt r3,r2,41eec <__extendsfdf2+0x100> 41e80: 018002c4 movi r6,11 41e84: 308dc83a sub r6,r6,r2 41e88: 11000544 addi r4,r2,21 41e8c: 8986d83a srl r3,r17,r6 41e90: 8922983a sll r17,r17,r4 41e94: 0180e244 movi r6,905 41e98: 01400434 movhi r5,16 41e9c: 3085c83a sub r2,r6,r2 41ea0: 297fffc4 addi r5,r5,-1 41ea4: 194c703a and r6,r3,r5 41ea8: 1141ffcc andi r5,r2,2047 41eac: 003fe006 br 41e30 <__alt_data_end+0xfffcfe30> 41eb0: 88000826 beq r17,zero,41ed4 <__extendsfdf2+0xe8> 41eb4: 880cd0fa srli r6,r17,3 41eb8: 00800434 movhi r2,16 41ebc: 10bfffc4 addi r2,r2,-1 41ec0: 31800234 orhi r6,r6,8 41ec4: 8822977a slli r17,r17,29 41ec8: 308c703a and r6,r6,r2 41ecc: 0141ffc4 movi r5,2047 41ed0: 003fd706 br 41e30 <__alt_data_end+0xfffcfe30> 41ed4: 0141ffc4 movi r5,2047 41ed8: 000d883a mov r6,zero 41edc: 003fd406 br 41e30 <__alt_data_end+0xfffcfe30> 41ee0: 000b883a mov r5,zero 41ee4: 000d883a mov r6,zero 41ee8: 003fd106 br 41e30 <__alt_data_end+0xfffcfe30> 41eec: 11bffd44 addi r6,r2,-11 41ef0: 8986983a sll r3,r17,r6 41ef4: 0023883a mov r17,zero 41ef8: 003fe606 br 41e94 <__alt_data_end+0xfffcfe94> 00041efc <__clzsi2>: 41efc: 00bfffd4 movui r2,65535 41f00: 11000536 bltu r2,r4,41f18 <__clzsi2+0x1c> 41f04: 00803fc4 movi r2,255 41f08: 11000f36 bltu r2,r4,41f48 <__clzsi2+0x4c> 41f0c: 00800804 movi r2,32 41f10: 0007883a mov r3,zero 41f14: 00000506 br 41f2c <__clzsi2+0x30> 41f18: 00804034 movhi r2,256 41f1c: 10bfffc4 addi r2,r2,-1 41f20: 11000c2e bgeu r2,r4,41f54 <__clzsi2+0x58> 41f24: 00800204 movi r2,8 41f28: 00c00604 movi r3,24 41f2c: 20c8d83a srl r4,r4,r3 41f30: 00c00174 movhi r3,5 41f34: 18c83584 addi r3,r3,8406 41f38: 1909883a add r4,r3,r4 41f3c: 20c00003 ldbu r3,0(r4) 41f40: 10c5c83a sub r2,r2,r3 41f44: f800283a ret 41f48: 00800604 movi r2,24 41f4c: 00c00204 movi r3,8 41f50: 003ff606 br 41f2c <__alt_data_end+0xfffcff2c> 41f54: 00800404 movi r2,16 41f58: 1007883a mov r3,r2 41f5c: 003ff306 br 41f2c <__alt_data_end+0xfffcff2c> 00041f60 <_getc_r>: 41f60: defffd04 addi sp,sp,-12 41f64: dc000115 stw r16,4(sp) 41f68: dfc00215 stw ra,8(sp) 41f6c: 2021883a mov r16,r4 41f70: 20000226 beq r4,zero,41f7c <_getc_r+0x1c> 41f74: 20800e17 ldw r2,56(r4) 41f78: 10000c26 beq r2,zero,41fac <_getc_r+0x4c> 41f7c: 28800117 ldw r2,4(r5) 41f80: 10bfffc4 addi r2,r2,-1 41f84: 28800115 stw r2,4(r5) 41f88: 10000c16 blt r2,zero,41fbc <_getc_r+0x5c> 41f8c: 28800017 ldw r2,0(r5) 41f90: 10c00044 addi r3,r2,1 41f94: 28c00015 stw r3,0(r5) 41f98: 10800003 ldbu r2,0(r2) 41f9c: dfc00217 ldw ra,8(sp) 41fa0: dc000117 ldw r16,4(sp) 41fa4: dec00304 addi sp,sp,12 41fa8: f800283a ret 41fac: d9400015 stw r5,0(sp) 41fb0: 004652c0 call 4652c <__sinit> 41fb4: d9400017 ldw r5,0(sp) 41fb8: 003ff006 br 41f7c <__alt_data_end+0xfffcff7c> 41fbc: 8009883a mov r4,r16 41fc0: dfc00217 ldw ra,8(sp) 41fc4: dc000117 ldw r16,4(sp) 41fc8: dec00304 addi sp,sp,12 41fcc: 00420e41 jmpi 420e4 <__srget_r> 00041fd0 : 41fd0: 00800174 movhi r2,5 41fd4: defffd04 addi sp,sp,-12 41fd8: 10908b04 addi r2,r2,16940 41fdc: dc400115 stw r17,4(sp) 41fe0: 14400017 ldw r17,0(r2) 41fe4: dc000015 stw r16,0(sp) 41fe8: dfc00215 stw ra,8(sp) 41fec: 2021883a mov r16,r4 41ff0: 88000226 beq r17,zero,41ffc 41ff4: 88800e17 ldw r2,56(r17) 41ff8: 10000d26 beq r2,zero,42030 41ffc: 80800117 ldw r2,4(r16) 42000: 10bfffc4 addi r2,r2,-1 42004: 80800115 stw r2,4(r16) 42008: 10000c16 blt r2,zero,4203c 4200c: 80800017 ldw r2,0(r16) 42010: 10c00044 addi r3,r2,1 42014: 80c00015 stw r3,0(r16) 42018: 10800003 ldbu r2,0(r2) 4201c: dfc00217 ldw ra,8(sp) 42020: dc400117 ldw r17,4(sp) 42024: dc000017 ldw r16,0(sp) 42028: dec00304 addi sp,sp,12 4202c: f800283a ret 42030: 8809883a mov r4,r17 42034: 004652c0 call 4652c <__sinit> 42038: 003ff006 br 41ffc <__alt_data_end+0xfffcfffc> 4203c: 800b883a mov r5,r16 42040: 8809883a mov r4,r17 42044: dfc00217 ldw ra,8(sp) 42048: dc400117 ldw r17,4(sp) 4204c: dc000017 ldw r16,0(sp) 42050: dec00304 addi sp,sp,12 42054: 00420e41 jmpi 420e4 <__srget_r> 00042058 <_printf_r>: 42058: defffd04 addi sp,sp,-12 4205c: 2805883a mov r2,r5 42060: dfc00015 stw ra,0(sp) 42064: d9800115 stw r6,4(sp) 42068: d9c00215 stw r7,8(sp) 4206c: 21400217 ldw r5,8(r4) 42070: d9c00104 addi r7,sp,4 42074: 100d883a mov r6,r2 42078: 004216c0 call 4216c <___vfprintf_internal_r> 4207c: dfc00017 ldw ra,0(sp) 42080: dec00304 addi sp,sp,12 42084: f800283a ret 00042088 : 42088: defffc04 addi sp,sp,-16 4208c: dfc00015 stw ra,0(sp) 42090: d9400115 stw r5,4(sp) 42094: d9800215 stw r6,8(sp) 42098: d9c00315 stw r7,12(sp) 4209c: 00800174 movhi r2,5 420a0: 10908b04 addi r2,r2,16940 420a4: 10800017 ldw r2,0(r2) 420a8: 200b883a mov r5,r4 420ac: d9800104 addi r6,sp,4 420b0: 11000217 ldw r4,8(r2) 420b4: 00444480 call 44448 <__vfprintf_internal> 420b8: dfc00017 ldw ra,0(sp) 420bc: dec00404 addi sp,sp,16 420c0: f800283a ret 000420c4 <_putchar_r>: 420c4: 21800217 ldw r6,8(r4) 420c8: 00489e81 jmpi 489e8 <_putc_r> 000420cc : 420cc: 00800174 movhi r2,5 420d0: 10908b04 addi r2,r2,16940 420d4: 200b883a mov r5,r4 420d8: 11000017 ldw r4,0(r2) 420dc: 21800217 ldw r6,8(r4) 420e0: 00489e81 jmpi 489e8 <_putc_r> 000420e4 <__srget_r>: 420e4: defffd04 addi sp,sp,-12 420e8: dc400115 stw r17,4(sp) 420ec: dc000015 stw r16,0(sp) 420f0: dfc00215 stw ra,8(sp) 420f4: 2023883a mov r17,r4 420f8: 2821883a mov r16,r5 420fc: 20000226 beq r4,zero,42108 <__srget_r+0x24> 42100: 20800e17 ldw r2,56(r4) 42104: 10001026 beq r2,zero,42148 <__srget_r+0x64> 42108: 800b883a mov r5,r16 4210c: 8809883a mov r4,r17 42110: 0048b6c0 call 48b6c <__srefill_r> 42114: 10000e1e bne r2,zero,42150 <__srget_r+0x6c> 42118: 80c00017 ldw r3,0(r16) 4211c: 80800117 ldw r2,4(r16) 42120: 19000044 addi r4,r3,1 42124: 10bfffc4 addi r2,r2,-1 42128: 80800115 stw r2,4(r16) 4212c: 81000015 stw r4,0(r16) 42130: 18800003 ldbu r2,0(r3) 42134: dfc00217 ldw ra,8(sp) 42138: dc400117 ldw r17,4(sp) 4213c: dc000017 ldw r16,0(sp) 42140: dec00304 addi sp,sp,12 42144: f800283a ret 42148: 004652c0 call 4652c <__sinit> 4214c: 003fee06 br 42108 <__alt_data_end+0xfffd0108> 42150: 00bfffc4 movi r2,-1 42154: 003ff706 br 42134 <__alt_data_end+0xfffd0134> 00042158 <__srget>: 42158: 00800174 movhi r2,5 4215c: 10908b04 addi r2,r2,16940 42160: 200b883a mov r5,r4 42164: 11000017 ldw r4,0(r2) 42168: 00420e41 jmpi 420e4 <__srget_r> 0004216c <___vfprintf_internal_r>: 4216c: deffb804 addi sp,sp,-288 42170: dfc04715 stw ra,284(sp) 42174: ddc04515 stw r23,276(sp) 42178: dd404315 stw r21,268(sp) 4217c: d9002d15 stw r4,180(sp) 42180: 282f883a mov r23,r5 42184: 302b883a mov r21,r6 42188: d9c02e15 stw r7,184(sp) 4218c: df004615 stw fp,280(sp) 42190: dd804415 stw r22,272(sp) 42194: dd004215 stw r20,264(sp) 42198: dcc04115 stw r19,260(sp) 4219c: dc804015 stw r18,256(sp) 421a0: dc403f15 stw r17,252(sp) 421a4: dc003e15 stw r16,248(sp) 421a8: 0046be40 call 46be4 <_localeconv_r> 421ac: 10800017 ldw r2,0(r2) 421b0: 1009883a mov r4,r2 421b4: d8803415 stw r2,208(sp) 421b8: 00490200 call 49020 421bc: d8803715 stw r2,220(sp) 421c0: d8802d17 ldw r2,180(sp) 421c4: 10000226 beq r2,zero,421d0 <___vfprintf_internal_r+0x64> 421c8: 10800e17 ldw r2,56(r2) 421cc: 1000fb26 beq r2,zero,425bc <___vfprintf_internal_r+0x450> 421d0: b880030b ldhu r2,12(r23) 421d4: 10c8000c andi r3,r2,8192 421d8: 1800061e bne r3,zero,421f4 <___vfprintf_internal_r+0x88> 421dc: b9001917 ldw r4,100(r23) 421e0: 00f7ffc4 movi r3,-8193 421e4: 10880014 ori r2,r2,8192 421e8: 20c6703a and r3,r4,r3 421ec: b880030d sth r2,12(r23) 421f0: b8c01915 stw r3,100(r23) 421f4: 10c0020c andi r3,r2,8 421f8: 1800c326 beq r3,zero,42508 <___vfprintf_internal_r+0x39c> 421fc: b8c00417 ldw r3,16(r23) 42200: 1800c126 beq r3,zero,42508 <___vfprintf_internal_r+0x39c> 42204: 1080068c andi r2,r2,26 42208: 00c00284 movi r3,10 4220c: 10c0c626 beq r2,r3,42528 <___vfprintf_internal_r+0x3bc> 42210: d8c00404 addi r3,sp,16 42214: 05000174 movhi r20,5 42218: d9001e04 addi r4,sp,120 4221c: a5088784 addi r20,r20,8734 42220: d8c01e15 stw r3,120(sp) 42224: d8002015 stw zero,128(sp) 42228: d8001f15 stw zero,124(sp) 4222c: d8003315 stw zero,204(sp) 42230: d8003615 stw zero,216(sp) 42234: d8003815 stw zero,224(sp) 42238: 1811883a mov r8,r3 4223c: d8003915 stw zero,228(sp) 42240: d8003a15 stw zero,232(sp) 42244: d8002f15 stw zero,188(sp) 42248: d9002815 stw r4,160(sp) 4224c: a8800007 ldb r2,0(r21) 42250: 10028b26 beq r2,zero,42c80 <___vfprintf_internal_r+0xb14> 42254: 00c00944 movi r3,37 42258: a823883a mov r17,r21 4225c: 10c0021e bne r2,r3,42268 <___vfprintf_internal_r+0xfc> 42260: 00001406 br 422b4 <___vfprintf_internal_r+0x148> 42264: 10c00326 beq r2,r3,42274 <___vfprintf_internal_r+0x108> 42268: 8c400044 addi r17,r17,1 4226c: 88800007 ldb r2,0(r17) 42270: 103ffc1e bne r2,zero,42264 <__alt_data_end+0xfffd0264> 42274: 8d61c83a sub r16,r17,r21 42278: 80000e26 beq r16,zero,422b4 <___vfprintf_internal_r+0x148> 4227c: d8c02017 ldw r3,128(sp) 42280: d8801f17 ldw r2,124(sp) 42284: 45400015 stw r21,0(r8) 42288: 1c07883a add r3,r3,r16 4228c: 10800044 addi r2,r2,1 42290: d8c02015 stw r3,128(sp) 42294: 44000115 stw r16,4(r8) 42298: d8801f15 stw r2,124(sp) 4229c: 00c001c4 movi r3,7 422a0: 1880a916 blt r3,r2,42548 <___vfprintf_internal_r+0x3dc> 422a4: 42000204 addi r8,r8,8 422a8: d9402f17 ldw r5,188(sp) 422ac: 2c0b883a add r5,r5,r16 422b0: d9402f15 stw r5,188(sp) 422b4: 88800007 ldb r2,0(r17) 422b8: 1000aa26 beq r2,zero,42564 <___vfprintf_internal_r+0x3f8> 422bc: 8d400044 addi r21,r17,1 422c0: 8c400047 ldb r17,1(r17) 422c4: 0021883a mov r16,zero 422c8: 00bfffc4 movi r2,-1 422cc: 0025883a mov r18,zero 422d0: dc002905 stb r16,164(sp) 422d4: d8002785 stb zero,158(sp) 422d8: d8002b05 stb zero,172(sp) 422dc: d8802a15 stw r2,168(sp) 422e0: d8003115 stw zero,196(sp) 422e4: 04c01604 movi r19,88 422e8: 05800244 movi r22,9 422ec: 9021883a mov r16,r18 422f0: 4039883a mov fp,r8 422f4: ad400044 addi r21,r21,1 422f8: 88bff804 addi r2,r17,-32 422fc: 98833236 bltu r19,r2,42fc8 <___vfprintf_internal_r+0xe5c> 42300: 100490ba slli r2,r2,2 42304: 00c00134 movhi r3,4 42308: 18c8c604 addi r3,r3,8984 4230c: 10c5883a add r2,r2,r3 42310: 10800017 ldw r2,0(r2) 42314: 1000683a jmp r2 42318: 00042ec0 call 42ec <__alt_mem_onchip_memory2-0x3bd14> 4231c: 00042fc8 cmpgei zero,zero,4287 42320: 00042fc8 cmpgei zero,zero,4287 42324: 00042ee0 cmpeqi zero,zero,4283 42328: 00042fc8 cmpgei zero,zero,4287 4232c: 00042fc8 cmpgei zero,zero,4287 42330: 00042fc8 cmpgei zero,zero,4287 42334: 00042fc8 cmpgei zero,zero,4287 42338: 00042fc8 cmpgei zero,zero,4287 4233c: 00042fc8 cmpgei zero,zero,4287 42340: 000425c8 cmpgei zero,zero,4247 42344: 00042dd0 cmplti zero,zero,4279 42348: 00042fc8 cmpgei zero,zero,4287 4234c: 0004248c andi zero,zero,4242 42350: 000425ec andhi zero,zero,4247 42354: 00042fc8 cmpgei zero,zero,4287 42358: 0004263c xorhi zero,zero,4248 4235c: 00042648 cmpgei zero,zero,4249 42360: 00042648 cmpgei zero,zero,4249 42364: 00042648 cmpgei zero,zero,4249 42368: 00042648 cmpgei zero,zero,4249 4236c: 00042648 cmpgei zero,zero,4249 42370: 00042648 cmpgei zero,zero,4249 42374: 00042648 cmpgei zero,zero,4249 42378: 00042648 cmpgei zero,zero,4249 4237c: 00042648 cmpgei zero,zero,4249 42380: 00042fc8 cmpgei zero,zero,4287 42384: 00042fc8 cmpgei zero,zero,4287 42388: 00042fc8 cmpgei zero,zero,4287 4238c: 00042fc8 cmpgei zero,zero,4287 42390: 00042fc8 cmpgei zero,zero,4287 42394: 00042fc8 cmpgei zero,zero,4287 42398: 00042fc8 cmpgei zero,zero,4287 4239c: 00042fc8 cmpgei zero,zero,4287 423a0: 00042fc8 cmpgei zero,zero,4287 423a4: 00042fc8 cmpgei zero,zero,4287 423a8: 00042684 movi zero,4250 423ac: 0004274c andi zero,zero,4253 423b0: 00042fc8 cmpgei zero,zero,4287 423b4: 0004274c andi zero,zero,4253 423b8: 00042fc8 cmpgei zero,zero,4287 423bc: 00042fc8 cmpgei zero,zero,4287 423c0: 00042fc8 cmpgei zero,zero,4287 423c4: 00042fc8 cmpgei zero,zero,4287 423c8: 000427f8 rdprs zero,zero,4255 423cc: 00042fc8 cmpgei zero,zero,4287 423d0: 00042fc8 cmpgei zero,zero,4287 423d4: 00042804 movi zero,4256 423d8: 00042fc8 cmpgei zero,zero,4287 423dc: 00042fc8 cmpgei zero,zero,4287 423e0: 00042fc8 cmpgei zero,zero,4287 423e4: 00042fc8 cmpgei zero,zero,4287 423e8: 00042fc8 cmpgei zero,zero,4287 423ec: 00042c88 cmpgei zero,zero,4274 423f0: 00042fc8 cmpgei zero,zero,4287 423f4: 00042fc8 cmpgei zero,zero,4287 423f8: 00042cf4 movhi zero,4275 423fc: 00042fc8 cmpgei zero,zero,4287 42400: 00042fc8 cmpgei zero,zero,4287 42404: 00042fc8 cmpgei zero,zero,4287 42408: 00042fc8 cmpgei zero,zero,4287 4240c: 00042fc8 cmpgei zero,zero,4287 42410: 00042fc8 cmpgei zero,zero,4287 42414: 00042fc8 cmpgei zero,zero,4287 42418: 00042fc8 cmpgei zero,zero,4287 4241c: 00042fc8 cmpgei zero,zero,4287 42420: 00042fc8 cmpgei zero,zero,4287 42424: 00042f6c andhi zero,zero,4285 42428: 00042eec andhi zero,zero,4283 4242c: 0004274c andi zero,zero,4253 42430: 0004274c andi zero,zero,4253 42434: 0004274c andi zero,zero,4253 42438: 00042f0c andi zero,zero,4284 4243c: 00042eec andhi zero,zero,4283 42440: 00042fc8 cmpgei zero,zero,4287 42444: 00042fc8 cmpgei zero,zero,4287 42448: 00042f18 cmpnei zero,zero,4284 4244c: 00042fc8 cmpgei zero,zero,4287 42450: 00042f2c andhi zero,zero,4284 42454: 00042db0 cmpltui zero,zero,4278 42458: 00042498 cmpnei zero,zero,4242 4245c: 00042de8 cmpgeui zero,zero,4279 42460: 00042fc8 cmpgei zero,zero,4287 42464: 00042df4 movhi zero,4279 42468: 00042fc8 cmpgei zero,zero,4287 4246c: 00042e58 cmpnei zero,zero,4281 42470: 00042fc8 cmpgei zero,zero,4287 42474: 00042fc8 cmpgei zero,zero,4287 42478: 00042e78 rdprs zero,zero,4281 4247c: d8c03117 ldw r3,196(sp) 42480: d8802e15 stw r2,184(sp) 42484: 00c7c83a sub r3,zero,r3 42488: d8c03115 stw r3,196(sp) 4248c: 84000114 ori r16,r16,4 42490: ac400007 ldb r17,0(r21) 42494: 003f9706 br 422f4 <__alt_data_end+0xfffd02f4> 42498: 00800c04 movi r2,48 4249c: d8802705 stb r2,156(sp) 424a0: 00801e04 movi r2,120 424a4: d8802745 stb r2,157(sp) 424a8: d9002a17 ldw r4,168(sp) 424ac: d8802e17 ldw r2,184(sp) 424b0: d8002785 stb zero,158(sp) 424b4: e011883a mov r8,fp 424b8: 10c00104 addi r3,r2,4 424bc: 14c00017 ldw r19,0(r2) 424c0: 002d883a mov r22,zero 424c4: 80800094 ori r2,r16,2 424c8: 2002ca16 blt r4,zero,42ff4 <___vfprintf_internal_r+0xe88> 424cc: 00bfdfc4 movi r2,-129 424d0: 80a4703a and r18,r16,r2 424d4: d8c02e15 stw r3,184(sp) 424d8: 94800094 ori r18,r18,2 424dc: 9802b41e bne r19,zero,42fb0 <___vfprintf_internal_r+0xe44> 424e0: 01400174 movhi r5,5 424e4: 29488004 addi r5,r5,8704 424e8: d9403915 stw r5,228(sp) 424ec: 04401e04 movi r17,120 424f0: d8802a17 ldw r2,168(sp) 424f4: 0039883a mov fp,zero 424f8: 1001fa26 beq r2,zero,42ce4 <___vfprintf_internal_r+0xb78> 424fc: 0027883a mov r19,zero 42500: 002d883a mov r22,zero 42504: 00021906 br 42d6c <___vfprintf_internal_r+0xc00> 42508: d9002d17 ldw r4,180(sp) 4250c: b80b883a mov r5,r23 42510: 00445200 call 44520 <__swsetup_r> 42514: 1005dc1e bne r2,zero,43c88 <___vfprintf_internal_r+0x1b1c> 42518: b880030b ldhu r2,12(r23) 4251c: 00c00284 movi r3,10 42520: 1080068c andi r2,r2,26 42524: 10ff3a1e bne r2,r3,42210 <__alt_data_end+0xfffd0210> 42528: b880038f ldh r2,14(r23) 4252c: 103f3816 blt r2,zero,42210 <__alt_data_end+0xfffd0210> 42530: d9c02e17 ldw r7,184(sp) 42534: d9002d17 ldw r4,180(sp) 42538: a80d883a mov r6,r21 4253c: b80b883a mov r5,r23 42540: 00444640 call 44464 <__sbprintf> 42544: 00001106 br 4258c <___vfprintf_internal_r+0x420> 42548: d9002d17 ldw r4,180(sp) 4254c: d9801e04 addi r6,sp,120 42550: b80b883a mov r5,r23 42554: 00491b40 call 491b4 <__sprint_r> 42558: 1000081e bne r2,zero,4257c <___vfprintf_internal_r+0x410> 4255c: da000404 addi r8,sp,16 42560: 003f5106 br 422a8 <__alt_data_end+0xfffd02a8> 42564: d8802017 ldw r2,128(sp) 42568: 10000426 beq r2,zero,4257c <___vfprintf_internal_r+0x410> 4256c: d9002d17 ldw r4,180(sp) 42570: d9801e04 addi r6,sp,120 42574: b80b883a mov r5,r23 42578: 00491b40 call 491b4 <__sprint_r> 4257c: b880030b ldhu r2,12(r23) 42580: 1080100c andi r2,r2,64 42584: 1005c01e bne r2,zero,43c88 <___vfprintf_internal_r+0x1b1c> 42588: d8802f17 ldw r2,188(sp) 4258c: dfc04717 ldw ra,284(sp) 42590: df004617 ldw fp,280(sp) 42594: ddc04517 ldw r23,276(sp) 42598: dd804417 ldw r22,272(sp) 4259c: dd404317 ldw r21,268(sp) 425a0: dd004217 ldw r20,264(sp) 425a4: dcc04117 ldw r19,260(sp) 425a8: dc804017 ldw r18,256(sp) 425ac: dc403f17 ldw r17,252(sp) 425b0: dc003e17 ldw r16,248(sp) 425b4: dec04804 addi sp,sp,288 425b8: f800283a ret 425bc: d9002d17 ldw r4,180(sp) 425c0: 004652c0 call 4652c <__sinit> 425c4: 003f0206 br 421d0 <__alt_data_end+0xfffd01d0> 425c8: d9002e17 ldw r4,184(sp) 425cc: d9402e17 ldw r5,184(sp) 425d0: 21000017 ldw r4,0(r4) 425d4: 28800104 addi r2,r5,4 425d8: d9003115 stw r4,196(sp) 425dc: 203fa716 blt r4,zero,4247c <__alt_data_end+0xfffd047c> 425e0: d8802e15 stw r2,184(sp) 425e4: ac400007 ldb r17,0(r21) 425e8: 003f4206 br 422f4 <__alt_data_end+0xfffd02f4> 425ec: ac400007 ldb r17,0(r21) 425f0: 01000a84 movi r4,42 425f4: a8c00044 addi r3,r21,1 425f8: 89075826 beq r17,r4,4435c <___vfprintf_internal_r+0x21f0> 425fc: 8cbff404 addi r18,r17,-48 42600: b486ae36 bltu r22,r18,440bc <___vfprintf_internal_r+0x1f50> 42604: 0009883a mov r4,zero 42608: 1823883a mov r17,r3 4260c: 01400284 movi r5,10 42610: 004c9f80 call 4c9f8 <__mulsi3> 42614: 88c00007 ldb r3,0(r17) 42618: 1489883a add r4,r2,r18 4261c: 8d400044 addi r21,r17,1 42620: 1cbff404 addi r18,r3,-48 42624: a823883a mov r17,r21 42628: b4bff82e bgeu r22,r18,4260c <__alt_data_end+0xfffd060c> 4262c: 1823883a mov r17,r3 42630: 2005f616 blt r4,zero,43e0c <___vfprintf_internal_r+0x1ca0> 42634: d9002a15 stw r4,168(sp) 42638: 003f2f06 br 422f8 <__alt_data_end+0xfffd02f8> 4263c: 84002014 ori r16,r16,128 42640: ac400007 ldb r17,0(r21) 42644: 003f2b06 br 422f4 <__alt_data_end+0xfffd02f4> 42648: 8cbff404 addi r18,r17,-48 4264c: d8003115 stw zero,196(sp) 42650: 0009883a mov r4,zero 42654: a823883a mov r17,r21 42658: 01400284 movi r5,10 4265c: 004c9f80 call 4c9f8 <__mulsi3> 42660: 88c00007 ldb r3,0(r17) 42664: 9089883a add r4,r18,r2 42668: ad400044 addi r21,r21,1 4266c: 1cbff404 addi r18,r3,-48 42670: a823883a mov r17,r21 42674: b4bff82e bgeu r22,r18,42658 <__alt_data_end+0xfffd0658> 42678: 1823883a mov r17,r3 4267c: d9003115 stw r4,196(sp) 42680: 003f1d06 br 422f8 <__alt_data_end+0xfffd02f8> 42684: 8025883a mov r18,r16 42688: dc002903 ldbu r16,164(sp) 4268c: e011883a mov r8,fp 42690: 84003fcc andi r16,r16,255 42694: 8007531e bne r16,zero,443e4 <___vfprintf_internal_r+0x2278> 42698: 94800414 ori r18,r18,16 4269c: 9080080c andi r2,r18,32 426a0: 1003a326 beq r2,zero,43530 <___vfprintf_internal_r+0x13c4> 426a4: d9002e17 ldw r4,184(sp) 426a8: 20800117 ldw r2,4(r4) 426ac: 24c00017 ldw r19,0(r4) 426b0: 21000204 addi r4,r4,8 426b4: d9002e15 stw r4,184(sp) 426b8: 102d883a mov r22,r2 426bc: 10047316 blt r2,zero,4388c <___vfprintf_internal_r+0x1720> 426c0: d9002a17 ldw r4,168(sp) 426c4: df002783 ldbu fp,158(sp) 426c8: 2003e416 blt r4,zero,4365c <___vfprintf_internal_r+0x14f0> 426cc: 00ffdfc4 movi r3,-129 426d0: 9d84b03a or r2,r19,r22 426d4: 90e4703a and r18,r18,r3 426d8: 10018026 beq r2,zero,42cdc <___vfprintf_internal_r+0xb70> 426dc: b003ab26 beq r22,zero,4358c <___vfprintf_internal_r+0x1420> 426e0: dc402915 stw r17,164(sp) 426e4: dc001e04 addi r16,sp,120 426e8: b023883a mov r17,r22 426ec: 402d883a mov r22,r8 426f0: 9809883a mov r4,r19 426f4: 880b883a mov r5,r17 426f8: 01800284 movi r6,10 426fc: 000f883a mov r7,zero 42700: 004c2800 call 4c280 <__umoddi3> 42704: 10800c04 addi r2,r2,48 42708: 843fffc4 addi r16,r16,-1 4270c: 9809883a mov r4,r19 42710: 880b883a mov r5,r17 42714: 80800005 stb r2,0(r16) 42718: 01800284 movi r6,10 4271c: 000f883a mov r7,zero 42720: 004bc840 call 4bc84 <__udivdi3> 42724: 1027883a mov r19,r2 42728: 10c4b03a or r2,r2,r3 4272c: 1823883a mov r17,r3 42730: 103fef1e bne r2,zero,426f0 <__alt_data_end+0xfffd06f0> 42734: d8c02817 ldw r3,160(sp) 42738: dc402917 ldw r17,164(sp) 4273c: b011883a mov r8,r22 42740: 1c07c83a sub r3,r3,r16 42744: d8c02b15 stw r3,172(sp) 42748: 00005f06 br 428c8 <___vfprintf_internal_r+0x75c> 4274c: 8025883a mov r18,r16 42750: dc002903 ldbu r16,164(sp) 42754: e011883a mov r8,fp 42758: 84003fcc andi r16,r16,255 4275c: 80071e1e bne r16,zero,443d8 <___vfprintf_internal_r+0x226c> 42760: 9080020c andi r2,r18,8 42764: 1004af26 beq r2,zero,43a24 <___vfprintf_internal_r+0x18b8> 42768: d9002e17 ldw r4,184(sp) 4276c: d9402e17 ldw r5,184(sp) 42770: d8802e17 ldw r2,184(sp) 42774: 21000017 ldw r4,0(r4) 42778: 29400117 ldw r5,4(r5) 4277c: 10800204 addi r2,r2,8 42780: d9003615 stw r4,216(sp) 42784: d9403815 stw r5,224(sp) 42788: d8802e15 stw r2,184(sp) 4278c: d9003617 ldw r4,216(sp) 42790: d9403817 ldw r5,224(sp) 42794: da003d15 stw r8,244(sp) 42798: 04000044 movi r16,1 4279c: 0048d400 call 48d40 <__fpclassifyd> 427a0: da003d17 ldw r8,244(sp) 427a4: 1404441e bne r2,r16,438b8 <___vfprintf_internal_r+0x174c> 427a8: d9003617 ldw r4,216(sp) 427ac: d9403817 ldw r5,224(sp) 427b0: 000d883a mov r6,zero 427b4: 000f883a mov r7,zero 427b8: 004d5540 call 4d554 <__ledf2> 427bc: da003d17 ldw r8,244(sp) 427c0: 1005e316 blt r2,zero,43f50 <___vfprintf_internal_r+0x1de4> 427c4: df002783 ldbu fp,158(sp) 427c8: 008011c4 movi r2,71 427cc: 1445580e bge r2,r17,43d30 <___vfprintf_internal_r+0x1bc4> 427d0: 04000174 movhi r16,5 427d4: 84087804 addi r16,r16,8672 427d8: 00c000c4 movi r3,3 427dc: 00bfdfc4 movi r2,-129 427e0: d8c02915 stw r3,164(sp) 427e4: 90a4703a and r18,r18,r2 427e8: d8c02b15 stw r3,172(sp) 427ec: d8002a15 stw zero,168(sp) 427f0: d8003215 stw zero,200(sp) 427f4: 00003a06 br 428e0 <___vfprintf_internal_r+0x774> 427f8: 84000214 ori r16,r16,8 427fc: ac400007 ldb r17,0(r21) 42800: 003ebc06 br 422f4 <__alt_data_end+0xfffd02f4> 42804: 8025883a mov r18,r16 42808: dc002903 ldbu r16,164(sp) 4280c: e011883a mov r8,fp 42810: 84003fcc andi r16,r16,255 42814: 8007001e bne r16,zero,44418 <___vfprintf_internal_r+0x22ac> 42818: 94800414 ori r18,r18,16 4281c: 9080080c andi r2,r18,32 42820: 1002fa26 beq r2,zero,4340c <___vfprintf_internal_r+0x12a0> 42824: d9002e17 ldw r4,184(sp) 42828: d9402a17 ldw r5,168(sp) 4282c: d8002785 stb zero,158(sp) 42830: 20800204 addi r2,r4,8 42834: 24c00017 ldw r19,0(r4) 42838: 25800117 ldw r22,4(r4) 4283c: 2804b116 blt r5,zero,43b04 <___vfprintf_internal_r+0x1998> 42840: 013fdfc4 movi r4,-129 42844: 9d86b03a or r3,r19,r22 42848: d8802e15 stw r2,184(sp) 4284c: 9124703a and r18,r18,r4 42850: 1802fb1e bne r3,zero,43440 <___vfprintf_internal_r+0x12d4> 42854: d8c02a17 ldw r3,168(sp) 42858: 0039883a mov fp,zero 4285c: 1805e526 beq r3,zero,43ff4 <___vfprintf_internal_r+0x1e88> 42860: 0027883a mov r19,zero 42864: 002d883a mov r22,zero 42868: dc001e04 addi r16,sp,120 4286c: 9806d0fa srli r3,r19,3 42870: b008977a slli r4,r22,29 42874: b02cd0fa srli r22,r22,3 42878: 9cc001cc andi r19,r19,7 4287c: 98800c04 addi r2,r19,48 42880: 843fffc4 addi r16,r16,-1 42884: 20e6b03a or r19,r4,r3 42888: 80800005 stb r2,0(r16) 4288c: 9d86b03a or r3,r19,r22 42890: 183ff61e bne r3,zero,4286c <__alt_data_end+0xfffd086c> 42894: 90c0004c andi r3,r18,1 42898: 18014126 beq r3,zero,42da0 <___vfprintf_internal_r+0xc34> 4289c: 10803fcc andi r2,r2,255 428a0: 1080201c xori r2,r2,128 428a4: 10bfe004 addi r2,r2,-128 428a8: 00c00c04 movi r3,48 428ac: 10c13c26 beq r2,r3,42da0 <___vfprintf_internal_r+0xc34> 428b0: 80ffffc5 stb r3,-1(r16) 428b4: d8c02817 ldw r3,160(sp) 428b8: 80bfffc4 addi r2,r16,-1 428bc: 1021883a mov r16,r2 428c0: 1887c83a sub r3,r3,r2 428c4: d8c02b15 stw r3,172(sp) 428c8: d8802b17 ldw r2,172(sp) 428cc: d9002a17 ldw r4,168(sp) 428d0: 1100010e bge r2,r4,428d8 <___vfprintf_internal_r+0x76c> 428d4: 2005883a mov r2,r4 428d8: d8802915 stw r2,164(sp) 428dc: d8003215 stw zero,200(sp) 428e0: e7003fcc andi fp,fp,255 428e4: e700201c xori fp,fp,128 428e8: e73fe004 addi fp,fp,-128 428ec: e0000326 beq fp,zero,428fc <___vfprintf_internal_r+0x790> 428f0: d8c02917 ldw r3,164(sp) 428f4: 18c00044 addi r3,r3,1 428f8: d8c02915 stw r3,164(sp) 428fc: 90c0008c andi r3,r18,2 42900: d8c02c15 stw r3,176(sp) 42904: 18000326 beq r3,zero,42914 <___vfprintf_internal_r+0x7a8> 42908: d8c02917 ldw r3,164(sp) 4290c: 18c00084 addi r3,r3,2 42910: d8c02915 stw r3,164(sp) 42914: 90c0210c andi r3,r18,132 42918: d8c03015 stw r3,192(sp) 4291c: 1801c51e bne r3,zero,43034 <___vfprintf_internal_r+0xec8> 42920: d9003117 ldw r4,196(sp) 42924: d8c02917 ldw r3,164(sp) 42928: 20e7c83a sub r19,r4,r3 4292c: 04c1c10e bge zero,r19,43034 <___vfprintf_internal_r+0xec8> 42930: 02400404 movi r9,16 42934: d8c02017 ldw r3,128(sp) 42938: d8801f17 ldw r2,124(sp) 4293c: 4cc52f0e bge r9,r19,43dfc <___vfprintf_internal_r+0x1c90> 42940: 01400174 movhi r5,5 42944: 29488b84 addi r5,r5,8750 42948: dc403b15 stw r17,236(sp) 4294c: d9403515 stw r5,212(sp) 42950: 9823883a mov r17,r19 42954: 482d883a mov r22,r9 42958: 9027883a mov r19,r18 4295c: 070001c4 movi fp,7 42960: 8025883a mov r18,r16 42964: dc002d17 ldw r16,180(sp) 42968: 00000306 br 42978 <___vfprintf_internal_r+0x80c> 4296c: 8c7ffc04 addi r17,r17,-16 42970: 42000204 addi r8,r8,8 42974: b440130e bge r22,r17,429c4 <___vfprintf_internal_r+0x858> 42978: 01000174 movhi r4,5 4297c: 18c00404 addi r3,r3,16 42980: 10800044 addi r2,r2,1 42984: 21088b84 addi r4,r4,8750 42988: 41000015 stw r4,0(r8) 4298c: 45800115 stw r22,4(r8) 42990: d8c02015 stw r3,128(sp) 42994: d8801f15 stw r2,124(sp) 42998: e0bff40e bge fp,r2,4296c <__alt_data_end+0xfffd096c> 4299c: d9801e04 addi r6,sp,120 429a0: b80b883a mov r5,r23 429a4: 8009883a mov r4,r16 429a8: 00491b40 call 491b4 <__sprint_r> 429ac: 103ef31e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 429b0: 8c7ffc04 addi r17,r17,-16 429b4: d8c02017 ldw r3,128(sp) 429b8: d8801f17 ldw r2,124(sp) 429bc: da000404 addi r8,sp,16 429c0: b47fed16 blt r22,r17,42978 <__alt_data_end+0xfffd0978> 429c4: 9021883a mov r16,r18 429c8: 9825883a mov r18,r19 429cc: 8827883a mov r19,r17 429d0: dc403b17 ldw r17,236(sp) 429d4: d9403517 ldw r5,212(sp) 429d8: 98c7883a add r3,r19,r3 429dc: 10800044 addi r2,r2,1 429e0: 41400015 stw r5,0(r8) 429e4: 44c00115 stw r19,4(r8) 429e8: d8c02015 stw r3,128(sp) 429ec: d8801f15 stw r2,124(sp) 429f0: 010001c4 movi r4,7 429f4: 2082c516 blt r4,r2,4350c <___vfprintf_internal_r+0x13a0> 429f8: df002787 ldb fp,158(sp) 429fc: 42000204 addi r8,r8,8 42a00: e0000c26 beq fp,zero,42a34 <___vfprintf_internal_r+0x8c8> 42a04: d8801f17 ldw r2,124(sp) 42a08: d9002784 addi r4,sp,158 42a0c: 18c00044 addi r3,r3,1 42a10: 10800044 addi r2,r2,1 42a14: 41000015 stw r4,0(r8) 42a18: 01000044 movi r4,1 42a1c: 41000115 stw r4,4(r8) 42a20: d8c02015 stw r3,128(sp) 42a24: d8801f15 stw r2,124(sp) 42a28: 010001c4 movi r4,7 42a2c: 20825e16 blt r4,r2,433a8 <___vfprintf_internal_r+0x123c> 42a30: 42000204 addi r8,r8,8 42a34: d8802c17 ldw r2,176(sp) 42a38: 10000c26 beq r2,zero,42a6c <___vfprintf_internal_r+0x900> 42a3c: d8801f17 ldw r2,124(sp) 42a40: d9002704 addi r4,sp,156 42a44: 18c00084 addi r3,r3,2 42a48: 10800044 addi r2,r2,1 42a4c: 41000015 stw r4,0(r8) 42a50: 01000084 movi r4,2 42a54: 41000115 stw r4,4(r8) 42a58: d8c02015 stw r3,128(sp) 42a5c: d8801f15 stw r2,124(sp) 42a60: 010001c4 movi r4,7 42a64: 20825816 blt r4,r2,433c8 <___vfprintf_internal_r+0x125c> 42a68: 42000204 addi r8,r8,8 42a6c: d9003017 ldw r4,192(sp) 42a70: 00802004 movi r2,128 42a74: 2081bb26 beq r4,r2,43164 <___vfprintf_internal_r+0xff8> 42a78: d9402a17 ldw r5,168(sp) 42a7c: d8802b17 ldw r2,172(sp) 42a80: 28adc83a sub r22,r5,r2 42a84: 0580310e bge zero,r22,42b4c <___vfprintf_internal_r+0x9e0> 42a88: 07000404 movi fp,16 42a8c: d8801f17 ldw r2,124(sp) 42a90: e584360e bge fp,r22,43b6c <___vfprintf_internal_r+0x1a00> 42a94: 01400174 movhi r5,5 42a98: 29488784 addi r5,r5,8734 42a9c: dc402a15 stw r17,168(sp) 42aa0: d9402c15 stw r5,176(sp) 42aa4: b023883a mov r17,r22 42aa8: 04c001c4 movi r19,7 42aac: a82d883a mov r22,r21 42ab0: 902b883a mov r21,r18 42ab4: 8025883a mov r18,r16 42ab8: dc002d17 ldw r16,180(sp) 42abc: 00000306 br 42acc <___vfprintf_internal_r+0x960> 42ac0: 8c7ffc04 addi r17,r17,-16 42ac4: 42000204 addi r8,r8,8 42ac8: e440110e bge fp,r17,42b10 <___vfprintf_internal_r+0x9a4> 42acc: 18c00404 addi r3,r3,16 42ad0: 10800044 addi r2,r2,1 42ad4: 45000015 stw r20,0(r8) 42ad8: 47000115 stw fp,4(r8) 42adc: d8c02015 stw r3,128(sp) 42ae0: d8801f15 stw r2,124(sp) 42ae4: 98bff60e bge r19,r2,42ac0 <__alt_data_end+0xfffd0ac0> 42ae8: d9801e04 addi r6,sp,120 42aec: b80b883a mov r5,r23 42af0: 8009883a mov r4,r16 42af4: 00491b40 call 491b4 <__sprint_r> 42af8: 103ea01e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 42afc: 8c7ffc04 addi r17,r17,-16 42b00: d8c02017 ldw r3,128(sp) 42b04: d8801f17 ldw r2,124(sp) 42b08: da000404 addi r8,sp,16 42b0c: e47fef16 blt fp,r17,42acc <__alt_data_end+0xfffd0acc> 42b10: 9021883a mov r16,r18 42b14: a825883a mov r18,r21 42b18: b02b883a mov r21,r22 42b1c: 882d883a mov r22,r17 42b20: dc402a17 ldw r17,168(sp) 42b24: d9002c17 ldw r4,176(sp) 42b28: 1d87883a add r3,r3,r22 42b2c: 10800044 addi r2,r2,1 42b30: 41000015 stw r4,0(r8) 42b34: 45800115 stw r22,4(r8) 42b38: d8c02015 stw r3,128(sp) 42b3c: d8801f15 stw r2,124(sp) 42b40: 010001c4 movi r4,7 42b44: 20821016 blt r4,r2,43388 <___vfprintf_internal_r+0x121c> 42b48: 42000204 addi r8,r8,8 42b4c: 9080400c andi r2,r18,256 42b50: 10013a1e bne r2,zero,4303c <___vfprintf_internal_r+0xed0> 42b54: d9402b17 ldw r5,172(sp) 42b58: d8801f17 ldw r2,124(sp) 42b5c: 44000015 stw r16,0(r8) 42b60: 1947883a add r3,r3,r5 42b64: 10800044 addi r2,r2,1 42b68: 41400115 stw r5,4(r8) 42b6c: d8c02015 stw r3,128(sp) 42b70: d8801f15 stw r2,124(sp) 42b74: 010001c4 movi r4,7 42b78: 2081f516 blt r4,r2,43350 <___vfprintf_internal_r+0x11e4> 42b7c: 42000204 addi r8,r8,8 42b80: 9480010c andi r18,r18,4 42b84: 90003226 beq r18,zero,42c50 <___vfprintf_internal_r+0xae4> 42b88: d9403117 ldw r5,196(sp) 42b8c: d8802917 ldw r2,164(sp) 42b90: 28a1c83a sub r16,r5,r2 42b94: 04002e0e bge zero,r16,42c50 <___vfprintf_internal_r+0xae4> 42b98: 04400404 movi r17,16 42b9c: d8801f17 ldw r2,124(sp) 42ba0: 8c04c40e bge r17,r16,43eb4 <___vfprintf_internal_r+0x1d48> 42ba4: 01400174 movhi r5,5 42ba8: 29488b84 addi r5,r5,8750 42bac: d9403515 stw r5,212(sp) 42bb0: 048001c4 movi r18,7 42bb4: dcc02d17 ldw r19,180(sp) 42bb8: 00000306 br 42bc8 <___vfprintf_internal_r+0xa5c> 42bbc: 843ffc04 addi r16,r16,-16 42bc0: 42000204 addi r8,r8,8 42bc4: 8c00130e bge r17,r16,42c14 <___vfprintf_internal_r+0xaa8> 42bc8: 01000174 movhi r4,5 42bcc: 18c00404 addi r3,r3,16 42bd0: 10800044 addi r2,r2,1 42bd4: 21088b84 addi r4,r4,8750 42bd8: 41000015 stw r4,0(r8) 42bdc: 44400115 stw r17,4(r8) 42be0: d8c02015 stw r3,128(sp) 42be4: d8801f15 stw r2,124(sp) 42be8: 90bff40e bge r18,r2,42bbc <__alt_data_end+0xfffd0bbc> 42bec: d9801e04 addi r6,sp,120 42bf0: b80b883a mov r5,r23 42bf4: 9809883a mov r4,r19 42bf8: 00491b40 call 491b4 <__sprint_r> 42bfc: 103e5f1e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 42c00: 843ffc04 addi r16,r16,-16 42c04: d8c02017 ldw r3,128(sp) 42c08: d8801f17 ldw r2,124(sp) 42c0c: da000404 addi r8,sp,16 42c10: 8c3fed16 blt r17,r16,42bc8 <__alt_data_end+0xfffd0bc8> 42c14: d9403517 ldw r5,212(sp) 42c18: 1c07883a add r3,r3,r16 42c1c: 10800044 addi r2,r2,1 42c20: 41400015 stw r5,0(r8) 42c24: 44000115 stw r16,4(r8) 42c28: d8c02015 stw r3,128(sp) 42c2c: d8801f15 stw r2,124(sp) 42c30: 010001c4 movi r4,7 42c34: 2080060e bge r4,r2,42c50 <___vfprintf_internal_r+0xae4> 42c38: d9002d17 ldw r4,180(sp) 42c3c: d9801e04 addi r6,sp,120 42c40: b80b883a mov r5,r23 42c44: 00491b40 call 491b4 <__sprint_r> 42c48: 103e4c1e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 42c4c: d8c02017 ldw r3,128(sp) 42c50: d8803117 ldw r2,196(sp) 42c54: d9002917 ldw r4,164(sp) 42c58: 1100010e bge r2,r4,42c60 <___vfprintf_internal_r+0xaf4> 42c5c: 2005883a mov r2,r4 42c60: d9402f17 ldw r5,188(sp) 42c64: 288b883a add r5,r5,r2 42c68: d9402f15 stw r5,188(sp) 42c6c: 1801c01e bne r3,zero,43370 <___vfprintf_internal_r+0x1204> 42c70: a8800007 ldb r2,0(r21) 42c74: d8001f15 stw zero,124(sp) 42c78: da000404 addi r8,sp,16 42c7c: 103d751e bne r2,zero,42254 <__alt_data_end+0xfffd0254> 42c80: a823883a mov r17,r21 42c84: 003d8b06 br 422b4 <__alt_data_end+0xfffd02b4> 42c88: 8025883a mov r18,r16 42c8c: dc002903 ldbu r16,164(sp) 42c90: e011883a mov r8,fp 42c94: 84003fcc andi r16,r16,255 42c98: 8005e51e bne r16,zero,44430 <___vfprintf_internal_r+0x22c4> 42c9c: 94800414 ori r18,r18,16 42ca0: 9080080c andi r2,r18,32 42ca4: 10022b26 beq r2,zero,43554 <___vfprintf_internal_r+0x13e8> 42ca8: d9002e17 ldw r4,184(sp) 42cac: d9402a17 ldw r5,168(sp) 42cb0: d8002785 stb zero,158(sp) 42cb4: 20c00204 addi r3,r4,8 42cb8: 24c00017 ldw r19,0(r4) 42cbc: 25800117 ldw r22,4(r4) 42cc0: 28042e16 blt r5,zero,43d7c <___vfprintf_internal_r+0x1c10> 42cc4: 013fdfc4 movi r4,-129 42cc8: 9d84b03a or r2,r19,r22 42ccc: d8c02e15 stw r3,184(sp) 42cd0: 9124703a and r18,r18,r4 42cd4: 0039883a mov fp,zero 42cd8: 103e801e bne r2,zero,426dc <__alt_data_end+0xfffd06dc> 42cdc: d9002a17 ldw r4,168(sp) 42ce0: 2002e01e bne r4,zero,43864 <___vfprintf_internal_r+0x16f8> 42ce4: d8002a15 stw zero,168(sp) 42ce8: d8002b15 stw zero,172(sp) 42cec: dc001e04 addi r16,sp,120 42cf0: 003ef506 br 428c8 <__alt_data_end+0xfffd08c8> 42cf4: 8025883a mov r18,r16 42cf8: dc002903 ldbu r16,164(sp) 42cfc: e011883a mov r8,fp 42d00: 84003fcc andi r16,r16,255 42d04: 8005ba1e bne r16,zero,443f0 <___vfprintf_internal_r+0x2284> 42d08: 01000174 movhi r4,5 42d0c: 21087b04 addi r4,r4,8684 42d10: d9003915 stw r4,228(sp) 42d14: 9080080c andi r2,r18,32 42d18: 10006126 beq r2,zero,42ea0 <___vfprintf_internal_r+0xd34> 42d1c: d9402e17 ldw r5,184(sp) 42d20: 2cc00017 ldw r19,0(r5) 42d24: 2d800117 ldw r22,4(r5) 42d28: 29400204 addi r5,r5,8 42d2c: d9402e15 stw r5,184(sp) 42d30: 9080004c andi r2,r18,1 42d34: 1001ac26 beq r2,zero,433e8 <___vfprintf_internal_r+0x127c> 42d38: 9d84b03a or r2,r19,r22 42d3c: 10038526 beq r2,zero,43b54 <___vfprintf_internal_r+0x19e8> 42d40: d8c02a17 ldw r3,168(sp) 42d44: 00800c04 movi r2,48 42d48: d8802705 stb r2,156(sp) 42d4c: dc402745 stb r17,157(sp) 42d50: d8002785 stb zero,158(sp) 42d54: 90800094 ori r2,r18,2 42d58: 18047916 blt r3,zero,43f40 <___vfprintf_internal_r+0x1dd4> 42d5c: 00bfdfc4 movi r2,-129 42d60: 90a4703a and r18,r18,r2 42d64: 94800094 ori r18,r18,2 42d68: 0039883a mov fp,zero 42d6c: d9003917 ldw r4,228(sp) 42d70: dc001e04 addi r16,sp,120 42d74: 988003cc andi r2,r19,15 42d78: b006973a slli r3,r22,28 42d7c: 2085883a add r2,r4,r2 42d80: 9826d13a srli r19,r19,4 42d84: 10800003 ldbu r2,0(r2) 42d88: b02cd13a srli r22,r22,4 42d8c: 843fffc4 addi r16,r16,-1 42d90: 1ce6b03a or r19,r3,r19 42d94: 80800005 stb r2,0(r16) 42d98: 9d84b03a or r2,r19,r22 42d9c: 103ff51e bne r2,zero,42d74 <__alt_data_end+0xfffd0d74> 42da0: d8c02817 ldw r3,160(sp) 42da4: 1c07c83a sub r3,r3,r16 42da8: d8c02b15 stw r3,172(sp) 42dac: 003ec606 br 428c8 <__alt_data_end+0xfffd08c8> 42db0: 8025883a mov r18,r16 42db4: dc002903 ldbu r16,164(sp) 42db8: e011883a mov r8,fp 42dbc: 84003fcc andi r16,r16,255 42dc0: 803e9626 beq r16,zero,4281c <__alt_data_end+0xfffd081c> 42dc4: d8c02b03 ldbu r3,172(sp) 42dc8: d8c02785 stb r3,158(sp) 42dcc: 003e9306 br 4281c <__alt_data_end+0xfffd081c> 42dd0: 00c00044 movi r3,1 42dd4: d8c02905 stb r3,164(sp) 42dd8: 00c00ac4 movi r3,43 42ddc: d8c02b05 stb r3,172(sp) 42de0: ac400007 ldb r17,0(r21) 42de4: 003d4306 br 422f4 <__alt_data_end+0xfffd02f4> 42de8: 84000814 ori r16,r16,32 42dec: ac400007 ldb r17,0(r21) 42df0: 003d4006 br 422f4 <__alt_data_end+0xfffd02f4> 42df4: d8802e17 ldw r2,184(sp) 42df8: 8025883a mov r18,r16 42dfc: d8002785 stb zero,158(sp) 42e00: 14000017 ldw r16,0(r2) 42e04: e011883a mov r8,fp 42e08: 14c00104 addi r19,r2,4 42e0c: 80042d26 beq r16,zero,43ec4 <___vfprintf_internal_r+0x1d58> 42e10: d8c02a17 ldw r3,168(sp) 42e14: 1803e416 blt r3,zero,43da8 <___vfprintf_internal_r+0x1c3c> 42e18: 180d883a mov r6,r3 42e1c: 000b883a mov r5,zero 42e20: 8009883a mov r4,r16 42e24: df003d15 stw fp,244(sp) 42e28: 00475dc0 call 475dc 42e2c: da003d17 ldw r8,244(sp) 42e30: 10046826 beq r2,zero,43fd4 <___vfprintf_internal_r+0x1e68> 42e34: 1405c83a sub r2,r2,r16 42e38: d8802b15 stw r2,172(sp) 42e3c: 1003e016 blt r2,zero,43dc0 <___vfprintf_internal_r+0x1c54> 42e40: df002783 ldbu fp,158(sp) 42e44: d8802915 stw r2,164(sp) 42e48: dcc02e15 stw r19,184(sp) 42e4c: d8002a15 stw zero,168(sp) 42e50: d8003215 stw zero,200(sp) 42e54: 003ea206 br 428e0 <__alt_data_end+0xfffd08e0> 42e58: 8025883a mov r18,r16 42e5c: dc002903 ldbu r16,164(sp) 42e60: e011883a mov r8,fp 42e64: 84003fcc andi r16,r16,255 42e68: 803f8d26 beq r16,zero,42ca0 <__alt_data_end+0xfffd0ca0> 42e6c: d8c02b03 ldbu r3,172(sp) 42e70: d8c02785 stb r3,158(sp) 42e74: 003f8a06 br 42ca0 <__alt_data_end+0xfffd0ca0> 42e78: 8025883a mov r18,r16 42e7c: dc002903 ldbu r16,164(sp) 42e80: e011883a mov r8,fp 42e84: 84003fcc andi r16,r16,255 42e88: 8005661e bne r16,zero,44424 <___vfprintf_internal_r+0x22b8> 42e8c: 01000174 movhi r4,5 42e90: 21088004 addi r4,r4,8704 42e94: d9003915 stw r4,228(sp) 42e98: 9080080c andi r2,r18,32 42e9c: 103f9f1e bne r2,zero,42d1c <__alt_data_end+0xfffd0d1c> 42ea0: 9080040c andi r2,r18,16 42ea4: 1002eb26 beq r2,zero,43a54 <___vfprintf_internal_r+0x18e8> 42ea8: d8802e17 ldw r2,184(sp) 42eac: 002d883a mov r22,zero 42eb0: 14c00017 ldw r19,0(r2) 42eb4: 10800104 addi r2,r2,4 42eb8: d8802e15 stw r2,184(sp) 42ebc: 003f9c06 br 42d30 <__alt_data_end+0xfffd0d30> 42ec0: d8802b07 ldb r2,172(sp) 42ec4: 1002e11e bne r2,zero,43a4c <___vfprintf_internal_r+0x18e0> 42ec8: 00c00044 movi r3,1 42ecc: d8c02905 stb r3,164(sp) 42ed0: 00c00804 movi r3,32 42ed4: d8c02b05 stb r3,172(sp) 42ed8: ac400007 ldb r17,0(r21) 42edc: 003d0506 br 422f4 <__alt_data_end+0xfffd02f4> 42ee0: 84000054 ori r16,r16,1 42ee4: ac400007 ldb r17,0(r21) 42ee8: 003d0206 br 422f4 <__alt_data_end+0xfffd02f4> 42eec: 8025883a mov r18,r16 42ef0: dc002903 ldbu r16,164(sp) 42ef4: e011883a mov r8,fp 42ef8: 84003fcc andi r16,r16,255 42efc: 803de726 beq r16,zero,4269c <__alt_data_end+0xfffd069c> 42f00: d8c02b03 ldbu r3,172(sp) 42f04: d8c02785 stb r3,158(sp) 42f08: 003de406 br 4269c <__alt_data_end+0xfffd069c> 42f0c: 84001014 ori r16,r16,64 42f10: ac400007 ldb r17,0(r21) 42f14: 003cf706 br 422f4 <__alt_data_end+0xfffd02f4> 42f18: ac400007 ldb r17,0(r21) 42f1c: 00801b04 movi r2,108 42f20: 88838f26 beq r17,r2,43d60 <___vfprintf_internal_r+0x1bf4> 42f24: 84000414 ori r16,r16,16 42f28: 003cf206 br 422f4 <__alt_data_end+0xfffd02f4> 42f2c: 8025883a mov r18,r16 42f30: dc002903 ldbu r16,164(sp) 42f34: e011883a mov r8,fp 42f38: 84003fcc andi r16,r16,255 42f3c: 80053f1e bne r16,zero,4443c <___vfprintf_internal_r+0x22d0> 42f40: 9080080c andi r2,r18,32 42f44: 1002d226 beq r2,zero,43a90 <___vfprintf_internal_r+0x1924> 42f48: d9002e17 ldw r4,184(sp) 42f4c: d9402f17 ldw r5,188(sp) 42f50: 20800017 ldw r2,0(r4) 42f54: 2807d7fa srai r3,r5,31 42f58: 21000104 addi r4,r4,4 42f5c: d9002e15 stw r4,184(sp) 42f60: 11400015 stw r5,0(r2) 42f64: 10c00115 stw r3,4(r2) 42f68: 003cb806 br 4224c <__alt_data_end+0xfffd024c> 42f6c: d8c02e17 ldw r3,184(sp) 42f70: d9002e17 ldw r4,184(sp) 42f74: 8025883a mov r18,r16 42f78: 18800017 ldw r2,0(r3) 42f7c: 21000104 addi r4,r4,4 42f80: 00c00044 movi r3,1 42f84: e011883a mov r8,fp 42f88: d8c02915 stw r3,164(sp) 42f8c: d8002785 stb zero,158(sp) 42f90: d8801405 stb r2,80(sp) 42f94: d9002e15 stw r4,184(sp) 42f98: d8c02b15 stw r3,172(sp) 42f9c: d8002a15 stw zero,168(sp) 42fa0: d8003215 stw zero,200(sp) 42fa4: dc001404 addi r16,sp,80 42fa8: 0039883a mov fp,zero 42fac: 003e5306 br 428fc <__alt_data_end+0xfffd08fc> 42fb0: 01000174 movhi r4,5 42fb4: 21088004 addi r4,r4,8704 42fb8: 0039883a mov fp,zero 42fbc: d9003915 stw r4,228(sp) 42fc0: 04401e04 movi r17,120 42fc4: 003f6906 br 42d6c <__alt_data_end+0xfffd0d6c> 42fc8: 8025883a mov r18,r16 42fcc: dc002903 ldbu r16,164(sp) 42fd0: e011883a mov r8,fp 42fd4: 84003fcc andi r16,r16,255 42fd8: 8005081e bne r16,zero,443fc <___vfprintf_internal_r+0x2290> 42fdc: 883d6126 beq r17,zero,42564 <__alt_data_end+0xfffd0564> 42fe0: 00c00044 movi r3,1 42fe4: d8c02915 stw r3,164(sp) 42fe8: dc401405 stb r17,80(sp) 42fec: d8002785 stb zero,158(sp) 42ff0: 003fe906 br 42f98 <__alt_data_end+0xfffd0f98> 42ff4: 01400174 movhi r5,5 42ff8: 29488004 addi r5,r5,8704 42ffc: d9403915 stw r5,228(sp) 43000: d8c02e15 stw r3,184(sp) 43004: 1025883a mov r18,r2 43008: 04401e04 movi r17,120 4300c: 9d84b03a or r2,r19,r22 43010: 1000fc1e bne r2,zero,43404 <___vfprintf_internal_r+0x1298> 43014: 0039883a mov fp,zero 43018: 00800084 movi r2,2 4301c: 10803fcc andi r2,r2,255 43020: 00c00044 movi r3,1 43024: 10c20f26 beq r2,r3,43864 <___vfprintf_internal_r+0x16f8> 43028: 00c00084 movi r3,2 4302c: 10fd3326 beq r2,r3,424fc <__alt_data_end+0xfffd04fc> 43030: 003e0b06 br 42860 <__alt_data_end+0xfffd0860> 43034: d8c02017 ldw r3,128(sp) 43038: 003e7106 br 42a00 <__alt_data_end+0xfffd0a00> 4303c: 00801944 movi r2,101 43040: 14407e0e bge r2,r17,4323c <___vfprintf_internal_r+0x10d0> 43044: d9003617 ldw r4,216(sp) 43048: d9403817 ldw r5,224(sp) 4304c: 000d883a mov r6,zero 43050: 000f883a mov r7,zero 43054: d8c03c15 stw r3,240(sp) 43058: da003d15 stw r8,244(sp) 4305c: 004d3f00 call 4d3f0 <__eqdf2> 43060: d8c03c17 ldw r3,240(sp) 43064: da003d17 ldw r8,244(sp) 43068: 1000f71e bne r2,zero,43448 <___vfprintf_internal_r+0x12dc> 4306c: d8801f17 ldw r2,124(sp) 43070: 01000174 movhi r4,5 43074: 21088704 addi r4,r4,8732 43078: 18c00044 addi r3,r3,1 4307c: 10800044 addi r2,r2,1 43080: 41000015 stw r4,0(r8) 43084: 01000044 movi r4,1 43088: 41000115 stw r4,4(r8) 4308c: d8c02015 stw r3,128(sp) 43090: d8801f15 stw r2,124(sp) 43094: 010001c4 movi r4,7 43098: 2082b816 blt r4,r2,43b7c <___vfprintf_internal_r+0x1a10> 4309c: 42000204 addi r8,r8,8 430a0: d8802617 ldw r2,152(sp) 430a4: d9403317 ldw r5,204(sp) 430a8: 11400216 blt r2,r5,430b4 <___vfprintf_internal_r+0xf48> 430ac: 9080004c andi r2,r18,1 430b0: 103eb326 beq r2,zero,42b80 <__alt_data_end+0xfffd0b80> 430b4: d8803717 ldw r2,220(sp) 430b8: d9003417 ldw r4,208(sp) 430bc: d9403717 ldw r5,220(sp) 430c0: 1887883a add r3,r3,r2 430c4: d8801f17 ldw r2,124(sp) 430c8: 41000015 stw r4,0(r8) 430cc: 41400115 stw r5,4(r8) 430d0: 10800044 addi r2,r2,1 430d4: d8c02015 stw r3,128(sp) 430d8: d8801f15 stw r2,124(sp) 430dc: 010001c4 movi r4,7 430e0: 20832916 blt r4,r2,43d88 <___vfprintf_internal_r+0x1c1c> 430e4: 42000204 addi r8,r8,8 430e8: d8803317 ldw r2,204(sp) 430ec: 143fffc4 addi r16,r2,-1 430f0: 043ea30e bge zero,r16,42b80 <__alt_data_end+0xfffd0b80> 430f4: 04400404 movi r17,16 430f8: d8801f17 ldw r2,124(sp) 430fc: 8c00880e bge r17,r16,43320 <___vfprintf_internal_r+0x11b4> 43100: 01400174 movhi r5,5 43104: 29488784 addi r5,r5,8734 43108: d9402c15 stw r5,176(sp) 4310c: 058001c4 movi r22,7 43110: dcc02d17 ldw r19,180(sp) 43114: 00000306 br 43124 <___vfprintf_internal_r+0xfb8> 43118: 42000204 addi r8,r8,8 4311c: 843ffc04 addi r16,r16,-16 43120: 8c00820e bge r17,r16,4332c <___vfprintf_internal_r+0x11c0> 43124: 18c00404 addi r3,r3,16 43128: 10800044 addi r2,r2,1 4312c: 45000015 stw r20,0(r8) 43130: 44400115 stw r17,4(r8) 43134: d8c02015 stw r3,128(sp) 43138: d8801f15 stw r2,124(sp) 4313c: b0bff60e bge r22,r2,43118 <__alt_data_end+0xfffd1118> 43140: d9801e04 addi r6,sp,120 43144: b80b883a mov r5,r23 43148: 9809883a mov r4,r19 4314c: 00491b40 call 491b4 <__sprint_r> 43150: 103d0a1e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 43154: d8c02017 ldw r3,128(sp) 43158: d8801f17 ldw r2,124(sp) 4315c: da000404 addi r8,sp,16 43160: 003fee06 br 4311c <__alt_data_end+0xfffd111c> 43164: d9403117 ldw r5,196(sp) 43168: d8802917 ldw r2,164(sp) 4316c: 28adc83a sub r22,r5,r2 43170: 05be410e bge zero,r22,42a78 <__alt_data_end+0xfffd0a78> 43174: 07000404 movi fp,16 43178: d8801f17 ldw r2,124(sp) 4317c: e5838f0e bge fp,r22,43fbc <___vfprintf_internal_r+0x1e50> 43180: 01400174 movhi r5,5 43184: 29488784 addi r5,r5,8734 43188: dc403015 stw r17,192(sp) 4318c: d9402c15 stw r5,176(sp) 43190: b023883a mov r17,r22 43194: 04c001c4 movi r19,7 43198: a82d883a mov r22,r21 4319c: 902b883a mov r21,r18 431a0: 8025883a mov r18,r16 431a4: dc002d17 ldw r16,180(sp) 431a8: 00000306 br 431b8 <___vfprintf_internal_r+0x104c> 431ac: 8c7ffc04 addi r17,r17,-16 431b0: 42000204 addi r8,r8,8 431b4: e440110e bge fp,r17,431fc <___vfprintf_internal_r+0x1090> 431b8: 18c00404 addi r3,r3,16 431bc: 10800044 addi r2,r2,1 431c0: 45000015 stw r20,0(r8) 431c4: 47000115 stw fp,4(r8) 431c8: d8c02015 stw r3,128(sp) 431cc: d8801f15 stw r2,124(sp) 431d0: 98bff60e bge r19,r2,431ac <__alt_data_end+0xfffd11ac> 431d4: d9801e04 addi r6,sp,120 431d8: b80b883a mov r5,r23 431dc: 8009883a mov r4,r16 431e0: 00491b40 call 491b4 <__sprint_r> 431e4: 103ce51e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 431e8: 8c7ffc04 addi r17,r17,-16 431ec: d8c02017 ldw r3,128(sp) 431f0: d8801f17 ldw r2,124(sp) 431f4: da000404 addi r8,sp,16 431f8: e47fef16 blt fp,r17,431b8 <__alt_data_end+0xfffd11b8> 431fc: 9021883a mov r16,r18 43200: a825883a mov r18,r21 43204: b02b883a mov r21,r22 43208: 882d883a mov r22,r17 4320c: dc403017 ldw r17,192(sp) 43210: d9002c17 ldw r4,176(sp) 43214: 1d87883a add r3,r3,r22 43218: 10800044 addi r2,r2,1 4321c: 41000015 stw r4,0(r8) 43220: 45800115 stw r22,4(r8) 43224: d8c02015 stw r3,128(sp) 43228: d8801f15 stw r2,124(sp) 4322c: 010001c4 movi r4,7 43230: 20818e16 blt r4,r2,4386c <___vfprintf_internal_r+0x1700> 43234: 42000204 addi r8,r8,8 43238: 003e0f06 br 42a78 <__alt_data_end+0xfffd0a78> 4323c: d9403317 ldw r5,204(sp) 43240: 00800044 movi r2,1 43244: 18c00044 addi r3,r3,1 43248: 1141530e bge r2,r5,43798 <___vfprintf_internal_r+0x162c> 4324c: dc401f17 ldw r17,124(sp) 43250: 00800044 movi r2,1 43254: 40800115 stw r2,4(r8) 43258: 8c400044 addi r17,r17,1 4325c: 44000015 stw r16,0(r8) 43260: d8c02015 stw r3,128(sp) 43264: dc401f15 stw r17,124(sp) 43268: 008001c4 movi r2,7 4326c: 14416b16 blt r2,r17,4381c <___vfprintf_internal_r+0x16b0> 43270: 42000204 addi r8,r8,8 43274: d8803717 ldw r2,220(sp) 43278: d9003417 ldw r4,208(sp) 4327c: 8c400044 addi r17,r17,1 43280: 10c7883a add r3,r2,r3 43284: 40800115 stw r2,4(r8) 43288: 41000015 stw r4,0(r8) 4328c: d8c02015 stw r3,128(sp) 43290: dc401f15 stw r17,124(sp) 43294: 008001c4 movi r2,7 43298: 14416916 blt r2,r17,43840 <___vfprintf_internal_r+0x16d4> 4329c: 45800204 addi r22,r8,8 432a0: d9003617 ldw r4,216(sp) 432a4: d9403817 ldw r5,224(sp) 432a8: 000d883a mov r6,zero 432ac: 000f883a mov r7,zero 432b0: d8c03c15 stw r3,240(sp) 432b4: 004d3f00 call 4d3f0 <__eqdf2> 432b8: d8c03c17 ldw r3,240(sp) 432bc: 1000bc26 beq r2,zero,435b0 <___vfprintf_internal_r+0x1444> 432c0: d9403317 ldw r5,204(sp) 432c4: 84000044 addi r16,r16,1 432c8: 8c400044 addi r17,r17,1 432cc: 28bfffc4 addi r2,r5,-1 432d0: 1887883a add r3,r3,r2 432d4: b0800115 stw r2,4(r22) 432d8: b4000015 stw r16,0(r22) 432dc: d8c02015 stw r3,128(sp) 432e0: dc401f15 stw r17,124(sp) 432e4: 008001c4 movi r2,7 432e8: 14414316 blt r2,r17,437f8 <___vfprintf_internal_r+0x168c> 432ec: b5800204 addi r22,r22,8 432f0: d9003a17 ldw r4,232(sp) 432f4: df0022c4 addi fp,sp,139 432f8: 8c400044 addi r17,r17,1 432fc: 20c7883a add r3,r4,r3 43300: b7000015 stw fp,0(r22) 43304: b1000115 stw r4,4(r22) 43308: d8c02015 stw r3,128(sp) 4330c: dc401f15 stw r17,124(sp) 43310: 008001c4 movi r2,7 43314: 14400e16 blt r2,r17,43350 <___vfprintf_internal_r+0x11e4> 43318: b2000204 addi r8,r22,8 4331c: 003e1806 br 42b80 <__alt_data_end+0xfffd0b80> 43320: 01000174 movhi r4,5 43324: 21088784 addi r4,r4,8734 43328: d9002c15 stw r4,176(sp) 4332c: d9002c17 ldw r4,176(sp) 43330: 1c07883a add r3,r3,r16 43334: 44000115 stw r16,4(r8) 43338: 41000015 stw r4,0(r8) 4333c: 10800044 addi r2,r2,1 43340: d8c02015 stw r3,128(sp) 43344: d8801f15 stw r2,124(sp) 43348: 010001c4 movi r4,7 4334c: 20be0b0e bge r4,r2,42b7c <__alt_data_end+0xfffd0b7c> 43350: d9002d17 ldw r4,180(sp) 43354: d9801e04 addi r6,sp,120 43358: b80b883a mov r5,r23 4335c: 00491b40 call 491b4 <__sprint_r> 43360: 103c861e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 43364: d8c02017 ldw r3,128(sp) 43368: da000404 addi r8,sp,16 4336c: 003e0406 br 42b80 <__alt_data_end+0xfffd0b80> 43370: d9002d17 ldw r4,180(sp) 43374: d9801e04 addi r6,sp,120 43378: b80b883a mov r5,r23 4337c: 00491b40 call 491b4 <__sprint_r> 43380: 103e3b26 beq r2,zero,42c70 <__alt_data_end+0xfffd0c70> 43384: 003c7d06 br 4257c <__alt_data_end+0xfffd057c> 43388: d9002d17 ldw r4,180(sp) 4338c: d9801e04 addi r6,sp,120 43390: b80b883a mov r5,r23 43394: 00491b40 call 491b4 <__sprint_r> 43398: 103c781e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 4339c: d8c02017 ldw r3,128(sp) 433a0: da000404 addi r8,sp,16 433a4: 003de906 br 42b4c <__alt_data_end+0xfffd0b4c> 433a8: d9002d17 ldw r4,180(sp) 433ac: d9801e04 addi r6,sp,120 433b0: b80b883a mov r5,r23 433b4: 00491b40 call 491b4 <__sprint_r> 433b8: 103c701e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 433bc: d8c02017 ldw r3,128(sp) 433c0: da000404 addi r8,sp,16 433c4: 003d9b06 br 42a34 <__alt_data_end+0xfffd0a34> 433c8: d9002d17 ldw r4,180(sp) 433cc: d9801e04 addi r6,sp,120 433d0: b80b883a mov r5,r23 433d4: 00491b40 call 491b4 <__sprint_r> 433d8: 103c681e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 433dc: d8c02017 ldw r3,128(sp) 433e0: da000404 addi r8,sp,16 433e4: 003da106 br 42a6c <__alt_data_end+0xfffd0a6c> 433e8: d9402a17 ldw r5,168(sp) 433ec: d8002785 stb zero,158(sp) 433f0: 283f0616 blt r5,zero,4300c <__alt_data_end+0xfffd100c> 433f4: 00ffdfc4 movi r3,-129 433f8: 9d84b03a or r2,r19,r22 433fc: 90e4703a and r18,r18,r3 43400: 103c3b26 beq r2,zero,424f0 <__alt_data_end+0xfffd04f0> 43404: 0039883a mov fp,zero 43408: 003e5806 br 42d6c <__alt_data_end+0xfffd0d6c> 4340c: 9080040c andi r2,r18,16 43410: 1001b326 beq r2,zero,43ae0 <___vfprintf_internal_r+0x1974> 43414: d8c02e17 ldw r3,184(sp) 43418: d9002a17 ldw r4,168(sp) 4341c: d8002785 stb zero,158(sp) 43420: 18800104 addi r2,r3,4 43424: 1cc00017 ldw r19,0(r3) 43428: 002d883a mov r22,zero 4342c: 2001b516 blt r4,zero,43b04 <___vfprintf_internal_r+0x1998> 43430: 00ffdfc4 movi r3,-129 43434: d8802e15 stw r2,184(sp) 43438: 90e4703a and r18,r18,r3 4343c: 983d0526 beq r19,zero,42854 <__alt_data_end+0xfffd0854> 43440: 0039883a mov fp,zero 43444: 003d0806 br 42868 <__alt_data_end+0xfffd0868> 43448: dc402617 ldw r17,152(sp) 4344c: 0441d30e bge zero,r17,43b9c <___vfprintf_internal_r+0x1a30> 43450: dc403217 ldw r17,200(sp) 43454: d8803317 ldw r2,204(sp) 43458: 1440010e bge r2,r17,43460 <___vfprintf_internal_r+0x12f4> 4345c: 1023883a mov r17,r2 43460: 04400a0e bge zero,r17,4348c <___vfprintf_internal_r+0x1320> 43464: d8801f17 ldw r2,124(sp) 43468: 1c47883a add r3,r3,r17 4346c: 44000015 stw r16,0(r8) 43470: 10800044 addi r2,r2,1 43474: 44400115 stw r17,4(r8) 43478: d8c02015 stw r3,128(sp) 4347c: d8801f15 stw r2,124(sp) 43480: 010001c4 movi r4,7 43484: 20826516 blt r4,r2,43e1c <___vfprintf_internal_r+0x1cb0> 43488: 42000204 addi r8,r8,8 4348c: 88026116 blt r17,zero,43e14 <___vfprintf_internal_r+0x1ca8> 43490: d9003217 ldw r4,200(sp) 43494: 2463c83a sub r17,r4,r17 43498: 04407b0e bge zero,r17,43688 <___vfprintf_internal_r+0x151c> 4349c: 05800404 movi r22,16 434a0: d8801f17 ldw r2,124(sp) 434a4: b4419d0e bge r22,r17,43b1c <___vfprintf_internal_r+0x19b0> 434a8: 01000174 movhi r4,5 434ac: 21088784 addi r4,r4,8734 434b0: d9002c15 stw r4,176(sp) 434b4: 070001c4 movi fp,7 434b8: dcc02d17 ldw r19,180(sp) 434bc: 00000306 br 434cc <___vfprintf_internal_r+0x1360> 434c0: 42000204 addi r8,r8,8 434c4: 8c7ffc04 addi r17,r17,-16 434c8: b441970e bge r22,r17,43b28 <___vfprintf_internal_r+0x19bc> 434cc: 18c00404 addi r3,r3,16 434d0: 10800044 addi r2,r2,1 434d4: 45000015 stw r20,0(r8) 434d8: 45800115 stw r22,4(r8) 434dc: d8c02015 stw r3,128(sp) 434e0: d8801f15 stw r2,124(sp) 434e4: e0bff60e bge fp,r2,434c0 <__alt_data_end+0xfffd14c0> 434e8: d9801e04 addi r6,sp,120 434ec: b80b883a mov r5,r23 434f0: 9809883a mov r4,r19 434f4: 00491b40 call 491b4 <__sprint_r> 434f8: 103c201e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 434fc: d8c02017 ldw r3,128(sp) 43500: d8801f17 ldw r2,124(sp) 43504: da000404 addi r8,sp,16 43508: 003fee06 br 434c4 <__alt_data_end+0xfffd14c4> 4350c: d9002d17 ldw r4,180(sp) 43510: d9801e04 addi r6,sp,120 43514: b80b883a mov r5,r23 43518: 00491b40 call 491b4 <__sprint_r> 4351c: 103c171e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 43520: d8c02017 ldw r3,128(sp) 43524: df002787 ldb fp,158(sp) 43528: da000404 addi r8,sp,16 4352c: 003d3406 br 42a00 <__alt_data_end+0xfffd0a00> 43530: 9080040c andi r2,r18,16 43534: 10016126 beq r2,zero,43abc <___vfprintf_internal_r+0x1950> 43538: d9402e17 ldw r5,184(sp) 4353c: 2cc00017 ldw r19,0(r5) 43540: 29400104 addi r5,r5,4 43544: d9402e15 stw r5,184(sp) 43548: 982dd7fa srai r22,r19,31 4354c: b005883a mov r2,r22 43550: 003c5a06 br 426bc <__alt_data_end+0xfffd06bc> 43554: 9080040c andi r2,r18,16 43558: 10003526 beq r2,zero,43630 <___vfprintf_internal_r+0x14c4> 4355c: d8c02e17 ldw r3,184(sp) 43560: d9002a17 ldw r4,168(sp) 43564: d8002785 stb zero,158(sp) 43568: 18800104 addi r2,r3,4 4356c: 1cc00017 ldw r19,0(r3) 43570: 002d883a mov r22,zero 43574: 20003716 blt r4,zero,43654 <___vfprintf_internal_r+0x14e8> 43578: 00ffdfc4 movi r3,-129 4357c: d8802e15 stw r2,184(sp) 43580: 90e4703a and r18,r18,r3 43584: 0039883a mov fp,zero 43588: 983dd426 beq r19,zero,42cdc <__alt_data_end+0xfffd0cdc> 4358c: 00800244 movi r2,9 43590: 14fc5336 bltu r2,r19,426e0 <__alt_data_end+0xfffd06e0> 43594: d8c02817 ldw r3,160(sp) 43598: dc001dc4 addi r16,sp,119 4359c: 9cc00c04 addi r19,r19,48 435a0: 1c07c83a sub r3,r3,r16 435a4: dcc01dc5 stb r19,119(sp) 435a8: d8c02b15 stw r3,172(sp) 435ac: 003cc606 br 428c8 <__alt_data_end+0xfffd08c8> 435b0: d8803317 ldw r2,204(sp) 435b4: 143fffc4 addi r16,r2,-1 435b8: 043f4d0e bge zero,r16,432f0 <__alt_data_end+0xfffd12f0> 435bc: 07000404 movi fp,16 435c0: e400810e bge fp,r16,437c8 <___vfprintf_internal_r+0x165c> 435c4: 01400174 movhi r5,5 435c8: 29488784 addi r5,r5,8734 435cc: d9402c15 stw r5,176(sp) 435d0: 01c001c4 movi r7,7 435d4: dcc02d17 ldw r19,180(sp) 435d8: 00000306 br 435e8 <___vfprintf_internal_r+0x147c> 435dc: b5800204 addi r22,r22,8 435e0: 843ffc04 addi r16,r16,-16 435e4: e4007b0e bge fp,r16,437d4 <___vfprintf_internal_r+0x1668> 435e8: 18c00404 addi r3,r3,16 435ec: 8c400044 addi r17,r17,1 435f0: b5000015 stw r20,0(r22) 435f4: b7000115 stw fp,4(r22) 435f8: d8c02015 stw r3,128(sp) 435fc: dc401f15 stw r17,124(sp) 43600: 3c7ff60e bge r7,r17,435dc <__alt_data_end+0xfffd15dc> 43604: d9801e04 addi r6,sp,120 43608: b80b883a mov r5,r23 4360c: 9809883a mov r4,r19 43610: d9c03c15 stw r7,240(sp) 43614: 00491b40 call 491b4 <__sprint_r> 43618: d9c03c17 ldw r7,240(sp) 4361c: 103bd71e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 43620: d8c02017 ldw r3,128(sp) 43624: dc401f17 ldw r17,124(sp) 43628: dd800404 addi r22,sp,16 4362c: 003fec06 br 435e0 <__alt_data_end+0xfffd15e0> 43630: 9080100c andi r2,r18,64 43634: d8002785 stb zero,158(sp) 43638: 10010e26 beq r2,zero,43a74 <___vfprintf_internal_r+0x1908> 4363c: d9402e17 ldw r5,184(sp) 43640: d8c02a17 ldw r3,168(sp) 43644: 002d883a mov r22,zero 43648: 28800104 addi r2,r5,4 4364c: 2cc0000b ldhu r19,0(r5) 43650: 183fc90e bge r3,zero,43578 <__alt_data_end+0xfffd1578> 43654: d8802e15 stw r2,184(sp) 43658: 0039883a mov fp,zero 4365c: 9d84b03a or r2,r19,r22 43660: 103c1e1e bne r2,zero,426dc <__alt_data_end+0xfffd06dc> 43664: 00800044 movi r2,1 43668: 003e6c06 br 4301c <__alt_data_end+0xfffd101c> 4366c: d9002d17 ldw r4,180(sp) 43670: d9801e04 addi r6,sp,120 43674: b80b883a mov r5,r23 43678: 00491b40 call 491b4 <__sprint_r> 4367c: 103bbf1e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 43680: d8c02017 ldw r3,128(sp) 43684: da000404 addi r8,sp,16 43688: d9003217 ldw r4,200(sp) 4368c: d8802617 ldw r2,152(sp) 43690: d9403317 ldw r5,204(sp) 43694: 8123883a add r17,r16,r4 43698: 11400216 blt r2,r5,436a4 <___vfprintf_internal_r+0x1538> 4369c: 9100004c andi r4,r18,1 436a0: 20000d26 beq r4,zero,436d8 <___vfprintf_internal_r+0x156c> 436a4: d9003717 ldw r4,220(sp) 436a8: d9403417 ldw r5,208(sp) 436ac: 1907883a add r3,r3,r4 436b0: d9001f17 ldw r4,124(sp) 436b4: 41400015 stw r5,0(r8) 436b8: d9403717 ldw r5,220(sp) 436bc: 21000044 addi r4,r4,1 436c0: d8c02015 stw r3,128(sp) 436c4: 41400115 stw r5,4(r8) 436c8: d9001f15 stw r4,124(sp) 436cc: 014001c4 movi r5,7 436d0: 2901e816 blt r5,r4,43e74 <___vfprintf_internal_r+0x1d08> 436d4: 42000204 addi r8,r8,8 436d8: d9003317 ldw r4,204(sp) 436dc: 8121883a add r16,r16,r4 436e0: 2085c83a sub r2,r4,r2 436e4: 8461c83a sub r16,r16,r17 436e8: 1400010e bge r2,r16,436f0 <___vfprintf_internal_r+0x1584> 436ec: 1021883a mov r16,r2 436f0: 04000a0e bge zero,r16,4371c <___vfprintf_internal_r+0x15b0> 436f4: d9001f17 ldw r4,124(sp) 436f8: 1c07883a add r3,r3,r16 436fc: 44400015 stw r17,0(r8) 43700: 21000044 addi r4,r4,1 43704: 44000115 stw r16,4(r8) 43708: d8c02015 stw r3,128(sp) 4370c: d9001f15 stw r4,124(sp) 43710: 014001c4 movi r5,7 43714: 2901fb16 blt r5,r4,43f04 <___vfprintf_internal_r+0x1d98> 43718: 42000204 addi r8,r8,8 4371c: 8001f716 blt r16,zero,43efc <___vfprintf_internal_r+0x1d90> 43720: 1421c83a sub r16,r2,r16 43724: 043d160e bge zero,r16,42b80 <__alt_data_end+0xfffd0b80> 43728: 04400404 movi r17,16 4372c: d8801f17 ldw r2,124(sp) 43730: 8c3efb0e bge r17,r16,43320 <__alt_data_end+0xfffd1320> 43734: 01400174 movhi r5,5 43738: 29488784 addi r5,r5,8734 4373c: d9402c15 stw r5,176(sp) 43740: 058001c4 movi r22,7 43744: dcc02d17 ldw r19,180(sp) 43748: 00000306 br 43758 <___vfprintf_internal_r+0x15ec> 4374c: 42000204 addi r8,r8,8 43750: 843ffc04 addi r16,r16,-16 43754: 8c3ef50e bge r17,r16,4332c <__alt_data_end+0xfffd132c> 43758: 18c00404 addi r3,r3,16 4375c: 10800044 addi r2,r2,1 43760: 45000015 stw r20,0(r8) 43764: 44400115 stw r17,4(r8) 43768: d8c02015 stw r3,128(sp) 4376c: d8801f15 stw r2,124(sp) 43770: b0bff60e bge r22,r2,4374c <__alt_data_end+0xfffd174c> 43774: d9801e04 addi r6,sp,120 43778: b80b883a mov r5,r23 4377c: 9809883a mov r4,r19 43780: 00491b40 call 491b4 <__sprint_r> 43784: 103b7d1e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 43788: d8c02017 ldw r3,128(sp) 4378c: d8801f17 ldw r2,124(sp) 43790: da000404 addi r8,sp,16 43794: 003fee06 br 43750 <__alt_data_end+0xfffd1750> 43798: 9088703a and r4,r18,r2 4379c: 203eab1e bne r4,zero,4324c <__alt_data_end+0xfffd124c> 437a0: dc401f17 ldw r17,124(sp) 437a4: 40800115 stw r2,4(r8) 437a8: 44000015 stw r16,0(r8) 437ac: 8c400044 addi r17,r17,1 437b0: d8c02015 stw r3,128(sp) 437b4: dc401f15 stw r17,124(sp) 437b8: 008001c4 movi r2,7 437bc: 14400e16 blt r2,r17,437f8 <___vfprintf_internal_r+0x168c> 437c0: 45800204 addi r22,r8,8 437c4: 003eca06 br 432f0 <__alt_data_end+0xfffd12f0> 437c8: 01000174 movhi r4,5 437cc: 21088784 addi r4,r4,8734 437d0: d9002c15 stw r4,176(sp) 437d4: d8802c17 ldw r2,176(sp) 437d8: 1c07883a add r3,r3,r16 437dc: 8c400044 addi r17,r17,1 437e0: b0800015 stw r2,0(r22) 437e4: b4000115 stw r16,4(r22) 437e8: d8c02015 stw r3,128(sp) 437ec: dc401f15 stw r17,124(sp) 437f0: 008001c4 movi r2,7 437f4: 147ebd0e bge r2,r17,432ec <__alt_data_end+0xfffd12ec> 437f8: d9002d17 ldw r4,180(sp) 437fc: d9801e04 addi r6,sp,120 43800: b80b883a mov r5,r23 43804: 00491b40 call 491b4 <__sprint_r> 43808: 103b5c1e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 4380c: d8c02017 ldw r3,128(sp) 43810: dc401f17 ldw r17,124(sp) 43814: dd800404 addi r22,sp,16 43818: 003eb506 br 432f0 <__alt_data_end+0xfffd12f0> 4381c: d9002d17 ldw r4,180(sp) 43820: d9801e04 addi r6,sp,120 43824: b80b883a mov r5,r23 43828: 00491b40 call 491b4 <__sprint_r> 4382c: 103b531e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 43830: d8c02017 ldw r3,128(sp) 43834: dc401f17 ldw r17,124(sp) 43838: da000404 addi r8,sp,16 4383c: 003e8d06 br 43274 <__alt_data_end+0xfffd1274> 43840: d9002d17 ldw r4,180(sp) 43844: d9801e04 addi r6,sp,120 43848: b80b883a mov r5,r23 4384c: 00491b40 call 491b4 <__sprint_r> 43850: 103b4a1e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 43854: d8c02017 ldw r3,128(sp) 43858: dc401f17 ldw r17,124(sp) 4385c: dd800404 addi r22,sp,16 43860: 003e8f06 br 432a0 <__alt_data_end+0xfffd12a0> 43864: 0027883a mov r19,zero 43868: 003f4a06 br 43594 <__alt_data_end+0xfffd1594> 4386c: d9002d17 ldw r4,180(sp) 43870: d9801e04 addi r6,sp,120 43874: b80b883a mov r5,r23 43878: 00491b40 call 491b4 <__sprint_r> 4387c: 103b3f1e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 43880: d8c02017 ldw r3,128(sp) 43884: da000404 addi r8,sp,16 43888: 003c7b06 br 42a78 <__alt_data_end+0xfffd0a78> 4388c: d9402a17 ldw r5,168(sp) 43890: 04e7c83a sub r19,zero,r19 43894: 07000b44 movi fp,45 43898: 9804c03a cmpne r2,r19,zero 4389c: 05adc83a sub r22,zero,r22 438a0: df002785 stb fp,158(sp) 438a4: b0adc83a sub r22,r22,r2 438a8: 28017b16 blt r5,zero,43e98 <___vfprintf_internal_r+0x1d2c> 438ac: 00bfdfc4 movi r2,-129 438b0: 90a4703a and r18,r18,r2 438b4: 003b8906 br 426dc <__alt_data_end+0xfffd06dc> 438b8: d9003617 ldw r4,216(sp) 438bc: d9403817 ldw r5,224(sp) 438c0: da003d15 stw r8,244(sp) 438c4: 0048d400 call 48d40 <__fpclassifyd> 438c8: da003d17 ldw r8,244(sp) 438cc: 1000f026 beq r2,zero,43c90 <___vfprintf_internal_r+0x1b24> 438d0: d9002a17 ldw r4,168(sp) 438d4: 05bff7c4 movi r22,-33 438d8: 00bfffc4 movi r2,-1 438dc: 8dac703a and r22,r17,r22 438e0: 20820026 beq r4,r2,440e4 <___vfprintf_internal_r+0x1f78> 438e4: 008011c4 movi r2,71 438e8: b081f726 beq r22,r2,440c8 <___vfprintf_internal_r+0x1f5c> 438ec: d9003817 ldw r4,224(sp) 438f0: 90c04014 ori r3,r18,256 438f4: d8c02c15 stw r3,176(sp) 438f8: 20021516 blt r4,zero,44150 <___vfprintf_internal_r+0x1fe4> 438fc: dcc03817 ldw r19,224(sp) 43900: d8002905 stb zero,164(sp) 43904: 00801984 movi r2,102 43908: 8881f926 beq r17,r2,440f0 <___vfprintf_internal_r+0x1f84> 4390c: 00801184 movi r2,70 43910: 88821c26 beq r17,r2,44184 <___vfprintf_internal_r+0x2018> 43914: 00801144 movi r2,69 43918: b081ef26 beq r22,r2,440d8 <___vfprintf_internal_r+0x1f6c> 4391c: d8c02a17 ldw r3,168(sp) 43920: d8802104 addi r2,sp,132 43924: d8800315 stw r2,12(sp) 43928: d9403617 ldw r5,216(sp) 4392c: d8802504 addi r2,sp,148 43930: d9002d17 ldw r4,180(sp) 43934: d8800215 stw r2,8(sp) 43938: d8802604 addi r2,sp,152 4393c: d8c00015 stw r3,0(sp) 43940: d8800115 stw r2,4(sp) 43944: 01c00084 movi r7,2 43948: 980d883a mov r6,r19 4394c: d8c03c15 stw r3,240(sp) 43950: da003d15 stw r8,244(sp) 43954: 004489c0 call 4489c <_dtoa_r> 43958: 1021883a mov r16,r2 4395c: 008019c4 movi r2,103 43960: d8c03c17 ldw r3,240(sp) 43964: da003d17 ldw r8,244(sp) 43968: 88817126 beq r17,r2,43f30 <___vfprintf_internal_r+0x1dc4> 4396c: 008011c4 movi r2,71 43970: 88829126 beq r17,r2,443b8 <___vfprintf_internal_r+0x224c> 43974: 80f9883a add fp,r16,r3 43978: d9003617 ldw r4,216(sp) 4397c: 000d883a mov r6,zero 43980: 000f883a mov r7,zero 43984: 980b883a mov r5,r19 43988: da003d15 stw r8,244(sp) 4398c: 004d3f00 call 4d3f0 <__eqdf2> 43990: da003d17 ldw r8,244(sp) 43994: 10018d26 beq r2,zero,43fcc <___vfprintf_internal_r+0x1e60> 43998: d8802117 ldw r2,132(sp) 4399c: 1700062e bgeu r2,fp,439b8 <___vfprintf_internal_r+0x184c> 439a0: 01000c04 movi r4,48 439a4: 10c00044 addi r3,r2,1 439a8: d8c02115 stw r3,132(sp) 439ac: 11000005 stb r4,0(r2) 439b0: d8802117 ldw r2,132(sp) 439b4: 173ffb36 bltu r2,fp,439a4 <__alt_data_end+0xfffd19a4> 439b8: 1405c83a sub r2,r2,r16 439bc: d8803315 stw r2,204(sp) 439c0: 008011c4 movi r2,71 439c4: b0817626 beq r22,r2,43fa0 <___vfprintf_internal_r+0x1e34> 439c8: 00801944 movi r2,101 439cc: 1442800e bge r2,r17,443d0 <___vfprintf_internal_r+0x2264> 439d0: d8c02617 ldw r3,152(sp) 439d4: 00801984 movi r2,102 439d8: d8c03215 stw r3,200(sp) 439dc: 8881fe26 beq r17,r2,441d8 <___vfprintf_internal_r+0x206c> 439e0: d8c03217 ldw r3,200(sp) 439e4: d9003317 ldw r4,204(sp) 439e8: 1901dd16 blt r3,r4,44160 <___vfprintf_internal_r+0x1ff4> 439ec: 9480004c andi r18,r18,1 439f0: 90022b1e bne r18,zero,442a0 <___vfprintf_internal_r+0x2134> 439f4: 1805883a mov r2,r3 439f8: 18028316 blt r3,zero,44408 <___vfprintf_internal_r+0x229c> 439fc: d8c03217 ldw r3,200(sp) 43a00: 044019c4 movi r17,103 43a04: d8c02b15 stw r3,172(sp) 43a08: df002907 ldb fp,164(sp) 43a0c: e001531e bne fp,zero,43f5c <___vfprintf_internal_r+0x1df0> 43a10: df002783 ldbu fp,158(sp) 43a14: d8802915 stw r2,164(sp) 43a18: dc802c17 ldw r18,176(sp) 43a1c: d8002a15 stw zero,168(sp) 43a20: 003baf06 br 428e0 <__alt_data_end+0xfffd08e0> 43a24: d8c02e17 ldw r3,184(sp) 43a28: d9002e17 ldw r4,184(sp) 43a2c: d9402e17 ldw r5,184(sp) 43a30: 18c00017 ldw r3,0(r3) 43a34: 21000117 ldw r4,4(r4) 43a38: 29400204 addi r5,r5,8 43a3c: d8c03615 stw r3,216(sp) 43a40: d9003815 stw r4,224(sp) 43a44: d9402e15 stw r5,184(sp) 43a48: 003b5006 br 4278c <__alt_data_end+0xfffd078c> 43a4c: ac400007 ldb r17,0(r21) 43a50: 003a2806 br 422f4 <__alt_data_end+0xfffd02f4> 43a54: 9080100c andi r2,r18,64 43a58: 1000a826 beq r2,zero,43cfc <___vfprintf_internal_r+0x1b90> 43a5c: d8c02e17 ldw r3,184(sp) 43a60: 002d883a mov r22,zero 43a64: 1cc0000b ldhu r19,0(r3) 43a68: 18c00104 addi r3,r3,4 43a6c: d8c02e15 stw r3,184(sp) 43a70: 003caf06 br 42d30 <__alt_data_end+0xfffd0d30> 43a74: d9002e17 ldw r4,184(sp) 43a78: d9402a17 ldw r5,168(sp) 43a7c: 002d883a mov r22,zero 43a80: 20800104 addi r2,r4,4 43a84: 24c00017 ldw r19,0(r4) 43a88: 283ebb0e bge r5,zero,43578 <__alt_data_end+0xfffd1578> 43a8c: 003ef106 br 43654 <__alt_data_end+0xfffd1654> 43a90: 9080040c andi r2,r18,16 43a94: 1000921e bne r2,zero,43ce0 <___vfprintf_internal_r+0x1b74> 43a98: 9480100c andi r18,r18,64 43a9c: 90013926 beq r18,zero,43f84 <___vfprintf_internal_r+0x1e18> 43aa0: d9402e17 ldw r5,184(sp) 43aa4: d8c02f17 ldw r3,188(sp) 43aa8: 28800017 ldw r2,0(r5) 43aac: 29400104 addi r5,r5,4 43ab0: d9402e15 stw r5,184(sp) 43ab4: 10c0000d sth r3,0(r2) 43ab8: 0039e406 br 4224c <__alt_data_end+0xfffd024c> 43abc: 9080100c andi r2,r18,64 43ac0: 10008026 beq r2,zero,43cc4 <___vfprintf_internal_r+0x1b58> 43ac4: d8802e17 ldw r2,184(sp) 43ac8: 14c0000f ldh r19,0(r2) 43acc: 10800104 addi r2,r2,4 43ad0: d8802e15 stw r2,184(sp) 43ad4: 982dd7fa srai r22,r19,31 43ad8: b005883a mov r2,r22 43adc: 003af706 br 426bc <__alt_data_end+0xfffd06bc> 43ae0: 9080100c andi r2,r18,64 43ae4: d8002785 stb zero,158(sp) 43ae8: 10008a1e bne r2,zero,43d14 <___vfprintf_internal_r+0x1ba8> 43aec: d9002e17 ldw r4,184(sp) 43af0: d9402a17 ldw r5,168(sp) 43af4: 002d883a mov r22,zero 43af8: 20800104 addi r2,r4,4 43afc: 24c00017 ldw r19,0(r4) 43b00: 283e4b0e bge r5,zero,43430 <__alt_data_end+0xfffd1430> 43b04: 9d86b03a or r3,r19,r22 43b08: d8802e15 stw r2,184(sp) 43b0c: 183e4c1e bne r3,zero,43440 <__alt_data_end+0xfffd1440> 43b10: 0039883a mov fp,zero 43b14: 0005883a mov r2,zero 43b18: 003d4006 br 4301c <__alt_data_end+0xfffd101c> 43b1c: 01400174 movhi r5,5 43b20: 29488784 addi r5,r5,8734 43b24: d9402c15 stw r5,176(sp) 43b28: d9402c17 ldw r5,176(sp) 43b2c: 1c47883a add r3,r3,r17 43b30: 10800044 addi r2,r2,1 43b34: 41400015 stw r5,0(r8) 43b38: 44400115 stw r17,4(r8) 43b3c: d8c02015 stw r3,128(sp) 43b40: d8801f15 stw r2,124(sp) 43b44: 010001c4 movi r4,7 43b48: 20bec816 blt r4,r2,4366c <__alt_data_end+0xfffd166c> 43b4c: 42000204 addi r8,r8,8 43b50: 003ecd06 br 43688 <__alt_data_end+0xfffd1688> 43b54: d9002a17 ldw r4,168(sp) 43b58: d8002785 stb zero,158(sp) 43b5c: 203d2d16 blt r4,zero,43014 <__alt_data_end+0xfffd1014> 43b60: 00bfdfc4 movi r2,-129 43b64: 90a4703a and r18,r18,r2 43b68: 003a6106 br 424f0 <__alt_data_end+0xfffd04f0> 43b6c: 01000174 movhi r4,5 43b70: 21088784 addi r4,r4,8734 43b74: d9002c15 stw r4,176(sp) 43b78: 003bea06 br 42b24 <__alt_data_end+0xfffd0b24> 43b7c: d9002d17 ldw r4,180(sp) 43b80: d9801e04 addi r6,sp,120 43b84: b80b883a mov r5,r23 43b88: 00491b40 call 491b4 <__sprint_r> 43b8c: 103a7b1e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 43b90: d8c02017 ldw r3,128(sp) 43b94: da000404 addi r8,sp,16 43b98: 003d4106 br 430a0 <__alt_data_end+0xfffd10a0> 43b9c: d8801f17 ldw r2,124(sp) 43ba0: 01400174 movhi r5,5 43ba4: 01000044 movi r4,1 43ba8: 18c00044 addi r3,r3,1 43bac: 10800044 addi r2,r2,1 43bb0: 29488704 addi r5,r5,8732 43bb4: 41000115 stw r4,4(r8) 43bb8: 41400015 stw r5,0(r8) 43bbc: d8c02015 stw r3,128(sp) 43bc0: d8801f15 stw r2,124(sp) 43bc4: 010001c4 movi r4,7 43bc8: 20805c16 blt r4,r2,43d3c <___vfprintf_internal_r+0x1bd0> 43bcc: 42000204 addi r8,r8,8 43bd0: 8800041e bne r17,zero,43be4 <___vfprintf_internal_r+0x1a78> 43bd4: d8803317 ldw r2,204(sp) 43bd8: 1000021e bne r2,zero,43be4 <___vfprintf_internal_r+0x1a78> 43bdc: 9080004c andi r2,r18,1 43be0: 103be726 beq r2,zero,42b80 <__alt_data_end+0xfffd0b80> 43be4: d9003717 ldw r4,220(sp) 43be8: d8801f17 ldw r2,124(sp) 43bec: d9403417 ldw r5,208(sp) 43bf0: 20c7883a add r3,r4,r3 43bf4: 10800044 addi r2,r2,1 43bf8: 41000115 stw r4,4(r8) 43bfc: 41400015 stw r5,0(r8) 43c00: d8c02015 stw r3,128(sp) 43c04: d8801f15 stw r2,124(sp) 43c08: 010001c4 movi r4,7 43c0c: 20812116 blt r4,r2,44094 <___vfprintf_internal_r+0x1f28> 43c10: 42000204 addi r8,r8,8 43c14: 0463c83a sub r17,zero,r17 43c18: 0440730e bge zero,r17,43de8 <___vfprintf_internal_r+0x1c7c> 43c1c: 05800404 movi r22,16 43c20: b440860e bge r22,r17,43e3c <___vfprintf_internal_r+0x1cd0> 43c24: 01400174 movhi r5,5 43c28: 29488784 addi r5,r5,8734 43c2c: d9402c15 stw r5,176(sp) 43c30: 070001c4 movi fp,7 43c34: dcc02d17 ldw r19,180(sp) 43c38: 00000306 br 43c48 <___vfprintf_internal_r+0x1adc> 43c3c: 42000204 addi r8,r8,8 43c40: 8c7ffc04 addi r17,r17,-16 43c44: b440800e bge r22,r17,43e48 <___vfprintf_internal_r+0x1cdc> 43c48: 18c00404 addi r3,r3,16 43c4c: 10800044 addi r2,r2,1 43c50: 45000015 stw r20,0(r8) 43c54: 45800115 stw r22,4(r8) 43c58: d8c02015 stw r3,128(sp) 43c5c: d8801f15 stw r2,124(sp) 43c60: e0bff60e bge fp,r2,43c3c <__alt_data_end+0xfffd1c3c> 43c64: d9801e04 addi r6,sp,120 43c68: b80b883a mov r5,r23 43c6c: 9809883a mov r4,r19 43c70: 00491b40 call 491b4 <__sprint_r> 43c74: 103a411e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 43c78: d8c02017 ldw r3,128(sp) 43c7c: d8801f17 ldw r2,124(sp) 43c80: da000404 addi r8,sp,16 43c84: 003fee06 br 43c40 <__alt_data_end+0xfffd1c40> 43c88: 00bfffc4 movi r2,-1 43c8c: 003a3f06 br 4258c <__alt_data_end+0xfffd058c> 43c90: 008011c4 movi r2,71 43c94: 1440b816 blt r2,r17,43f78 <___vfprintf_internal_r+0x1e0c> 43c98: 04000174 movhi r16,5 43c9c: 84087904 addi r16,r16,8676 43ca0: 00c000c4 movi r3,3 43ca4: 00bfdfc4 movi r2,-129 43ca8: d8c02915 stw r3,164(sp) 43cac: 90a4703a and r18,r18,r2 43cb0: df002783 ldbu fp,158(sp) 43cb4: d8c02b15 stw r3,172(sp) 43cb8: d8002a15 stw zero,168(sp) 43cbc: d8003215 stw zero,200(sp) 43cc0: 003b0706 br 428e0 <__alt_data_end+0xfffd08e0> 43cc4: d8c02e17 ldw r3,184(sp) 43cc8: 1cc00017 ldw r19,0(r3) 43ccc: 18c00104 addi r3,r3,4 43cd0: d8c02e15 stw r3,184(sp) 43cd4: 982dd7fa srai r22,r19,31 43cd8: b005883a mov r2,r22 43cdc: 003a7706 br 426bc <__alt_data_end+0xfffd06bc> 43ce0: d8c02e17 ldw r3,184(sp) 43ce4: d9002f17 ldw r4,188(sp) 43ce8: 18800017 ldw r2,0(r3) 43cec: 18c00104 addi r3,r3,4 43cf0: d8c02e15 stw r3,184(sp) 43cf4: 11000015 stw r4,0(r2) 43cf8: 00395406 br 4224c <__alt_data_end+0xfffd024c> 43cfc: d9002e17 ldw r4,184(sp) 43d00: 002d883a mov r22,zero 43d04: 24c00017 ldw r19,0(r4) 43d08: 21000104 addi r4,r4,4 43d0c: d9002e15 stw r4,184(sp) 43d10: 003c0706 br 42d30 <__alt_data_end+0xfffd0d30> 43d14: d9402e17 ldw r5,184(sp) 43d18: d8c02a17 ldw r3,168(sp) 43d1c: 002d883a mov r22,zero 43d20: 28800104 addi r2,r5,4 43d24: 2cc0000b ldhu r19,0(r5) 43d28: 183dc10e bge r3,zero,43430 <__alt_data_end+0xfffd1430> 43d2c: 003f7506 br 43b04 <__alt_data_end+0xfffd1b04> 43d30: 04000174 movhi r16,5 43d34: 84087704 addi r16,r16,8668 43d38: 003aa706 br 427d8 <__alt_data_end+0xfffd07d8> 43d3c: d9002d17 ldw r4,180(sp) 43d40: d9801e04 addi r6,sp,120 43d44: b80b883a mov r5,r23 43d48: 00491b40 call 491b4 <__sprint_r> 43d4c: 103a0b1e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 43d50: dc402617 ldw r17,152(sp) 43d54: d8c02017 ldw r3,128(sp) 43d58: da000404 addi r8,sp,16 43d5c: 003f9c06 br 43bd0 <__alt_data_end+0xfffd1bd0> 43d60: ac400043 ldbu r17,1(r21) 43d64: 84000814 ori r16,r16,32 43d68: ad400044 addi r21,r21,1 43d6c: 8c403fcc andi r17,r17,255 43d70: 8c40201c xori r17,r17,128 43d74: 8c7fe004 addi r17,r17,-128 43d78: 00395e06 br 422f4 <__alt_data_end+0xfffd02f4> 43d7c: d8c02e15 stw r3,184(sp) 43d80: 0039883a mov fp,zero 43d84: 003e3506 br 4365c <__alt_data_end+0xfffd165c> 43d88: d9002d17 ldw r4,180(sp) 43d8c: d9801e04 addi r6,sp,120 43d90: b80b883a mov r5,r23 43d94: 00491b40 call 491b4 <__sprint_r> 43d98: 1039f81e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 43d9c: d8c02017 ldw r3,128(sp) 43da0: da000404 addi r8,sp,16 43da4: 003cd006 br 430e8 <__alt_data_end+0xfffd10e8> 43da8: 8009883a mov r4,r16 43dac: df003d15 stw fp,244(sp) 43db0: 00490200 call 49020 43db4: d8802b15 stw r2,172(sp) 43db8: da003d17 ldw r8,244(sp) 43dbc: 103c200e bge r2,zero,42e40 <__alt_data_end+0xfffd0e40> 43dc0: 0005883a mov r2,zero 43dc4: 003c1e06 br 42e40 <__alt_data_end+0xfffd0e40> 43dc8: d9002d17 ldw r4,180(sp) 43dcc: d9801e04 addi r6,sp,120 43dd0: b80b883a mov r5,r23 43dd4: 00491b40 call 491b4 <__sprint_r> 43dd8: 1039e81e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 43ddc: d8c02017 ldw r3,128(sp) 43de0: d8801f17 ldw r2,124(sp) 43de4: da000404 addi r8,sp,16 43de8: d9403317 ldw r5,204(sp) 43dec: 10800044 addi r2,r2,1 43df0: 44000015 stw r16,0(r8) 43df4: 28c7883a add r3,r5,r3 43df8: 003b5b06 br 42b68 <__alt_data_end+0xfffd0b68> 43dfc: 01000174 movhi r4,5 43e00: 21088b84 addi r4,r4,8750 43e04: d9003515 stw r4,212(sp) 43e08: 003af206 br 429d4 <__alt_data_end+0xfffd09d4> 43e0c: 013fffc4 movi r4,-1 43e10: 003a0806 br 42634 <__alt_data_end+0xfffd0634> 43e14: 0023883a mov r17,zero 43e18: 003d9d06 br 43490 <__alt_data_end+0xfffd1490> 43e1c: d9002d17 ldw r4,180(sp) 43e20: d9801e04 addi r6,sp,120 43e24: b80b883a mov r5,r23 43e28: 00491b40 call 491b4 <__sprint_r> 43e2c: 1039d31e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 43e30: d8c02017 ldw r3,128(sp) 43e34: da000404 addi r8,sp,16 43e38: 003d9406 br 4348c <__alt_data_end+0xfffd148c> 43e3c: 01000174 movhi r4,5 43e40: 21088784 addi r4,r4,8734 43e44: d9002c15 stw r4,176(sp) 43e48: d9002c17 ldw r4,176(sp) 43e4c: 1c47883a add r3,r3,r17 43e50: 10800044 addi r2,r2,1 43e54: 41000015 stw r4,0(r8) 43e58: 44400115 stw r17,4(r8) 43e5c: d8c02015 stw r3,128(sp) 43e60: d8801f15 stw r2,124(sp) 43e64: 010001c4 movi r4,7 43e68: 20bfd716 blt r4,r2,43dc8 <__alt_data_end+0xfffd1dc8> 43e6c: 42000204 addi r8,r8,8 43e70: 003fdd06 br 43de8 <__alt_data_end+0xfffd1de8> 43e74: d9002d17 ldw r4,180(sp) 43e78: d9801e04 addi r6,sp,120 43e7c: b80b883a mov r5,r23 43e80: 00491b40 call 491b4 <__sprint_r> 43e84: 1039bd1e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 43e88: d8802617 ldw r2,152(sp) 43e8c: d8c02017 ldw r3,128(sp) 43e90: da000404 addi r8,sp,16 43e94: 003e1006 br 436d8 <__alt_data_end+0xfffd16d8> 43e98: 00800044 movi r2,1 43e9c: 10803fcc andi r2,r2,255 43ea0: 00c00044 movi r3,1 43ea4: 10fa0d26 beq r2,r3,426dc <__alt_data_end+0xfffd06dc> 43ea8: 00c00084 movi r3,2 43eac: 10fbaf26 beq r2,r3,42d6c <__alt_data_end+0xfffd0d6c> 43eb0: 003a6d06 br 42868 <__alt_data_end+0xfffd0868> 43eb4: 01000174 movhi r4,5 43eb8: 21088b84 addi r4,r4,8750 43ebc: d9003515 stw r4,212(sp) 43ec0: 003b5406 br 42c14 <__alt_data_end+0xfffd0c14> 43ec4: d8802a17 ldw r2,168(sp) 43ec8: 00c00184 movi r3,6 43ecc: 1880012e bgeu r3,r2,43ed4 <___vfprintf_internal_r+0x1d68> 43ed0: 1805883a mov r2,r3 43ed4: d8802b15 stw r2,172(sp) 43ed8: 1000ef16 blt r2,zero,44298 <___vfprintf_internal_r+0x212c> 43edc: 04000174 movhi r16,5 43ee0: d8802915 stw r2,164(sp) 43ee4: dcc02e15 stw r19,184(sp) 43ee8: d8002a15 stw zero,168(sp) 43eec: d8003215 stw zero,200(sp) 43ef0: 84088504 addi r16,r16,8724 43ef4: 0039883a mov fp,zero 43ef8: 003a8006 br 428fc <__alt_data_end+0xfffd08fc> 43efc: 0021883a mov r16,zero 43f00: 003e0706 br 43720 <__alt_data_end+0xfffd1720> 43f04: d9002d17 ldw r4,180(sp) 43f08: d9801e04 addi r6,sp,120 43f0c: b80b883a mov r5,r23 43f10: 00491b40 call 491b4 <__sprint_r> 43f14: 1039991e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 43f18: d8802617 ldw r2,152(sp) 43f1c: d9403317 ldw r5,204(sp) 43f20: d8c02017 ldw r3,128(sp) 43f24: da000404 addi r8,sp,16 43f28: 2885c83a sub r2,r5,r2 43f2c: 003dfb06 br 4371c <__alt_data_end+0xfffd171c> 43f30: 9080004c andi r2,r18,1 43f34: 103e8f1e bne r2,zero,43974 <__alt_data_end+0xfffd1974> 43f38: d8802117 ldw r2,132(sp) 43f3c: 003e9e06 br 439b8 <__alt_data_end+0xfffd19b8> 43f40: 1025883a mov r18,r2 43f44: 0039883a mov fp,zero 43f48: 00800084 movi r2,2 43f4c: 003fd306 br 43e9c <__alt_data_end+0xfffd1e9c> 43f50: 07000b44 movi fp,45 43f54: df002785 stb fp,158(sp) 43f58: 003a1b06 br 427c8 <__alt_data_end+0xfffd07c8> 43f5c: 00c00b44 movi r3,45 43f60: d8c02785 stb r3,158(sp) 43f64: d8802915 stw r2,164(sp) 43f68: dc802c17 ldw r18,176(sp) 43f6c: d8002a15 stw zero,168(sp) 43f70: 07000b44 movi fp,45 43f74: 003a5e06 br 428f0 <__alt_data_end+0xfffd08f0> 43f78: 04000174 movhi r16,5 43f7c: 84087a04 addi r16,r16,8680 43f80: 003f4706 br 43ca0 <__alt_data_end+0xfffd1ca0> 43f84: d9002e17 ldw r4,184(sp) 43f88: d9402f17 ldw r5,188(sp) 43f8c: 20800017 ldw r2,0(r4) 43f90: 21000104 addi r4,r4,4 43f94: d9002e15 stw r4,184(sp) 43f98: 11400015 stw r5,0(r2) 43f9c: 0038ab06 br 4224c <__alt_data_end+0xfffd024c> 43fa0: dd802617 ldw r22,152(sp) 43fa4: 00bfff44 movi r2,-3 43fa8: b0801c16 blt r22,r2,4401c <___vfprintf_internal_r+0x1eb0> 43fac: d9402a17 ldw r5,168(sp) 43fb0: 2d801a16 blt r5,r22,4401c <___vfprintf_internal_r+0x1eb0> 43fb4: dd803215 stw r22,200(sp) 43fb8: 003e8906 br 439e0 <__alt_data_end+0xfffd19e0> 43fbc: 01000174 movhi r4,5 43fc0: 21088784 addi r4,r4,8734 43fc4: d9002c15 stw r4,176(sp) 43fc8: 003c9106 br 43210 <__alt_data_end+0xfffd1210> 43fcc: e005883a mov r2,fp 43fd0: 003e7906 br 439b8 <__alt_data_end+0xfffd19b8> 43fd4: d9002a17 ldw r4,168(sp) 43fd8: df002783 ldbu fp,158(sp) 43fdc: dcc02e15 stw r19,184(sp) 43fe0: d9002915 stw r4,164(sp) 43fe4: d9002b15 stw r4,172(sp) 43fe8: d8002a15 stw zero,168(sp) 43fec: d8003215 stw zero,200(sp) 43ff0: 003a3b06 br 428e0 <__alt_data_end+0xfffd08e0> 43ff4: 9080004c andi r2,r18,1 43ff8: 0039883a mov fp,zero 43ffc: 10000426 beq r2,zero,44010 <___vfprintf_internal_r+0x1ea4> 44000: 00800c04 movi r2,48 44004: dc001dc4 addi r16,sp,119 44008: d8801dc5 stb r2,119(sp) 4400c: 003b6406 br 42da0 <__alt_data_end+0xfffd0da0> 44010: d8002b15 stw zero,172(sp) 44014: dc001e04 addi r16,sp,120 44018: 003a2b06 br 428c8 <__alt_data_end+0xfffd08c8> 4401c: 8c7fff84 addi r17,r17,-2 44020: b5bfffc4 addi r22,r22,-1 44024: dd802615 stw r22,152(sp) 44028: dc4022c5 stb r17,139(sp) 4402c: b000bf16 blt r22,zero,4432c <___vfprintf_internal_r+0x21c0> 44030: 00800ac4 movi r2,43 44034: d8802305 stb r2,140(sp) 44038: 00800244 movi r2,9 4403c: 15807016 blt r2,r22,44200 <___vfprintf_internal_r+0x2094> 44040: 00800c04 movi r2,48 44044: b5800c04 addi r22,r22,48 44048: d8802345 stb r2,141(sp) 4404c: dd802385 stb r22,142(sp) 44050: d88023c4 addi r2,sp,143 44054: df0022c4 addi fp,sp,139 44058: d8c03317 ldw r3,204(sp) 4405c: 1739c83a sub fp,r2,fp 44060: d9003317 ldw r4,204(sp) 44064: e0c7883a add r3,fp,r3 44068: df003a15 stw fp,232(sp) 4406c: d8c02b15 stw r3,172(sp) 44070: 00800044 movi r2,1 44074: 1100b30e bge r2,r4,44344 <___vfprintf_internal_r+0x21d8> 44078: d8c02b17 ldw r3,172(sp) 4407c: 18c00044 addi r3,r3,1 44080: d8c02b15 stw r3,172(sp) 44084: 1805883a mov r2,r3 44088: 1800ac16 blt r3,zero,4433c <___vfprintf_internal_r+0x21d0> 4408c: d8003215 stw zero,200(sp) 44090: 003e5d06 br 43a08 <__alt_data_end+0xfffd1a08> 44094: d9002d17 ldw r4,180(sp) 44098: d9801e04 addi r6,sp,120 4409c: b80b883a mov r5,r23 440a0: 00491b40 call 491b4 <__sprint_r> 440a4: 1039351e bne r2,zero,4257c <__alt_data_end+0xfffd057c> 440a8: dc402617 ldw r17,152(sp) 440ac: d8c02017 ldw r3,128(sp) 440b0: d8801f17 ldw r2,124(sp) 440b4: da000404 addi r8,sp,16 440b8: 003ed606 br 43c14 <__alt_data_end+0xfffd1c14> 440bc: 182b883a mov r21,r3 440c0: d8002a15 stw zero,168(sp) 440c4: 00388c06 br 422f8 <__alt_data_end+0xfffd02f8> 440c8: d8802a17 ldw r2,168(sp) 440cc: 103e071e bne r2,zero,438ec <__alt_data_end+0xfffd18ec> 440d0: dc002a15 stw r16,168(sp) 440d4: 003e0506 br 438ec <__alt_data_end+0xfffd18ec> 440d8: d9002a17 ldw r4,168(sp) 440dc: 20c00044 addi r3,r4,1 440e0: 003e0f06 br 43920 <__alt_data_end+0xfffd1920> 440e4: 01400184 movi r5,6 440e8: d9402a15 stw r5,168(sp) 440ec: 003dff06 br 438ec <__alt_data_end+0xfffd18ec> 440f0: d8802104 addi r2,sp,132 440f4: d8800315 stw r2,12(sp) 440f8: d8802504 addi r2,sp,148 440fc: d8800215 stw r2,8(sp) 44100: d8802604 addi r2,sp,152 44104: d8800115 stw r2,4(sp) 44108: d8802a17 ldw r2,168(sp) 4410c: d9403617 ldw r5,216(sp) 44110: d9002d17 ldw r4,180(sp) 44114: d8800015 stw r2,0(sp) 44118: 01c000c4 movi r7,3 4411c: 980d883a mov r6,r19 44120: da003d15 stw r8,244(sp) 44124: 004489c0 call 4489c <_dtoa_r> 44128: d8c02a17 ldw r3,168(sp) 4412c: da003d17 ldw r8,244(sp) 44130: 1021883a mov r16,r2 44134: 10f9883a add fp,r2,r3 44138: 81000007 ldb r4,0(r16) 4413c: 00800c04 movi r2,48 44140: 20805e26 beq r4,r2,442bc <___vfprintf_internal_r+0x2150> 44144: d8c02617 ldw r3,152(sp) 44148: e0f9883a add fp,fp,r3 4414c: 003e0a06 br 43978 <__alt_data_end+0xfffd1978> 44150: 00c00b44 movi r3,45 44154: 24e0003c xorhi r19,r4,32768 44158: d8c02905 stb r3,164(sp) 4415c: 003de906 br 43904 <__alt_data_end+0xfffd1904> 44160: d8c03217 ldw r3,200(sp) 44164: 00c07a0e bge zero,r3,44350 <___vfprintf_internal_r+0x21e4> 44168: 00800044 movi r2,1 4416c: d9003317 ldw r4,204(sp) 44170: 1105883a add r2,r2,r4 44174: d8802b15 stw r2,172(sp) 44178: 10004e16 blt r2,zero,442b4 <___vfprintf_internal_r+0x2148> 4417c: 044019c4 movi r17,103 44180: 003e2106 br 43a08 <__alt_data_end+0xfffd1a08> 44184: d9002a17 ldw r4,168(sp) 44188: d8802104 addi r2,sp,132 4418c: d8800315 stw r2,12(sp) 44190: d9000015 stw r4,0(sp) 44194: d8802504 addi r2,sp,148 44198: d9403617 ldw r5,216(sp) 4419c: d9002d17 ldw r4,180(sp) 441a0: d8800215 stw r2,8(sp) 441a4: d8802604 addi r2,sp,152 441a8: d8800115 stw r2,4(sp) 441ac: 01c000c4 movi r7,3 441b0: 980d883a mov r6,r19 441b4: da003d15 stw r8,244(sp) 441b8: 004489c0 call 4489c <_dtoa_r> 441bc: d8c02a17 ldw r3,168(sp) 441c0: da003d17 ldw r8,244(sp) 441c4: 1021883a mov r16,r2 441c8: 00801184 movi r2,70 441cc: 80f9883a add fp,r16,r3 441d0: 88bfd926 beq r17,r2,44138 <__alt_data_end+0xfffd2138> 441d4: 003de806 br 43978 <__alt_data_end+0xfffd1978> 441d8: d9002a17 ldw r4,168(sp) 441dc: 00c04d0e bge zero,r3,44314 <___vfprintf_internal_r+0x21a8> 441e0: 2000441e bne r4,zero,442f4 <___vfprintf_internal_r+0x2188> 441e4: 9480004c andi r18,r18,1 441e8: 9000421e bne r18,zero,442f4 <___vfprintf_internal_r+0x2188> 441ec: 1805883a mov r2,r3 441f0: 18006f16 blt r3,zero,443b0 <___vfprintf_internal_r+0x2244> 441f4: d8c03217 ldw r3,200(sp) 441f8: d8c02b15 stw r3,172(sp) 441fc: 003e0206 br 43a08 <__alt_data_end+0xfffd1a08> 44200: df0022c4 addi fp,sp,139 44204: dc002a15 stw r16,168(sp) 44208: 4027883a mov r19,r8 4420c: e021883a mov r16,fp 44210: b009883a mov r4,r22 44214: 01400284 movi r5,10 44218: 004c8c80 call 4c8c8 <__modsi3> 4421c: 10800c04 addi r2,r2,48 44220: 843fffc4 addi r16,r16,-1 44224: b009883a mov r4,r22 44228: 01400284 movi r5,10 4422c: 80800005 stb r2,0(r16) 44230: 004c8440 call 4c844 <__divsi3> 44234: 102d883a mov r22,r2 44238: 00800244 movi r2,9 4423c: 15bff416 blt r2,r22,44210 <__alt_data_end+0xfffd2210> 44240: 9811883a mov r8,r19 44244: b0800c04 addi r2,r22,48 44248: 8027883a mov r19,r16 4424c: 997fffc4 addi r5,r19,-1 44250: 98bfffc5 stb r2,-1(r19) 44254: dc002a17 ldw r16,168(sp) 44258: 2f006d2e bgeu r5,fp,44410 <___vfprintf_internal_r+0x22a4> 4425c: d9c02384 addi r7,sp,142 44260: 3ccfc83a sub r7,r7,r19 44264: d9002344 addi r4,sp,141 44268: e1cf883a add r7,fp,r7 4426c: 00000106 br 44274 <___vfprintf_internal_r+0x2108> 44270: 28800003 ldbu r2,0(r5) 44274: 20800005 stb r2,0(r4) 44278: 21000044 addi r4,r4,1 4427c: 29400044 addi r5,r5,1 44280: 393ffb1e bne r7,r4,44270 <__alt_data_end+0xfffd2270> 44284: d8802304 addi r2,sp,140 44288: 14c5c83a sub r2,r2,r19 4428c: d8c02344 addi r3,sp,141 44290: 1885883a add r2,r3,r2 44294: 003f7006 br 44058 <__alt_data_end+0xfffd2058> 44298: 0005883a mov r2,zero 4429c: 003f0f06 br 43edc <__alt_data_end+0xfffd1edc> 442a0: d8c03217 ldw r3,200(sp) 442a4: 18c00044 addi r3,r3,1 442a8: d8c02b15 stw r3,172(sp) 442ac: 1805883a mov r2,r3 442b0: 183fb20e bge r3,zero,4417c <__alt_data_end+0xfffd217c> 442b4: 0005883a mov r2,zero 442b8: 003fb006 br 4417c <__alt_data_end+0xfffd217c> 442bc: d9003617 ldw r4,216(sp) 442c0: 000d883a mov r6,zero 442c4: 000f883a mov r7,zero 442c8: 980b883a mov r5,r19 442cc: d8c03c15 stw r3,240(sp) 442d0: da003d15 stw r8,244(sp) 442d4: 004d3f00 call 4d3f0 <__eqdf2> 442d8: d8c03c17 ldw r3,240(sp) 442dc: da003d17 ldw r8,244(sp) 442e0: 103f9826 beq r2,zero,44144 <__alt_data_end+0xfffd2144> 442e4: 00800044 movi r2,1 442e8: 10c7c83a sub r3,r2,r3 442ec: d8c02615 stw r3,152(sp) 442f0: 003f9506 br 44148 <__alt_data_end+0xfffd2148> 442f4: d9002a17 ldw r4,168(sp) 442f8: d8c03217 ldw r3,200(sp) 442fc: 20800044 addi r2,r4,1 44300: 1885883a add r2,r3,r2 44304: d8802b15 stw r2,172(sp) 44308: 103dbf0e bge r2,zero,43a08 <__alt_data_end+0xfffd1a08> 4430c: 0005883a mov r2,zero 44310: 003dbd06 br 43a08 <__alt_data_end+0xfffd1a08> 44314: 2000201e bne r4,zero,44398 <___vfprintf_internal_r+0x222c> 44318: 9480004c andi r18,r18,1 4431c: 90001e1e bne r18,zero,44398 <___vfprintf_internal_r+0x222c> 44320: 00800044 movi r2,1 44324: d8802b15 stw r2,172(sp) 44328: 003db706 br 43a08 <__alt_data_end+0xfffd1a08> 4432c: 00800b44 movi r2,45 44330: 05adc83a sub r22,zero,r22 44334: d8802305 stb r2,140(sp) 44338: 003f3f06 br 44038 <__alt_data_end+0xfffd2038> 4433c: 0005883a mov r2,zero 44340: 003f5206 br 4408c <__alt_data_end+0xfffd208c> 44344: 90a4703a and r18,r18,r2 44348: 903f4e26 beq r18,zero,44084 <__alt_data_end+0xfffd2084> 4434c: 003f4a06 br 44078 <__alt_data_end+0xfffd2078> 44350: 00800084 movi r2,2 44354: 10c5c83a sub r2,r2,r3 44358: 003f8406 br 4416c <__alt_data_end+0xfffd216c> 4435c: d9402e17 ldw r5,184(sp) 44360: d9002e17 ldw r4,184(sp) 44364: ac400043 ldbu r17,1(r21) 44368: 29400017 ldw r5,0(r5) 4436c: 20800104 addi r2,r4,4 44370: d8802e15 stw r2,184(sp) 44374: d9402a15 stw r5,168(sp) 44378: 182b883a mov r21,r3 4437c: 283e7b0e bge r5,zero,43d6c <__alt_data_end+0xfffd1d6c> 44380: 8c403fcc andi r17,r17,255 44384: 017fffc4 movi r5,-1 44388: 8c40201c xori r17,r17,128 4438c: d9402a15 stw r5,168(sp) 44390: 8c7fe004 addi r17,r17,-128 44394: 0037d706 br 422f4 <__alt_data_end+0xfffd02f4> 44398: d8c02a17 ldw r3,168(sp) 4439c: 18c00084 addi r3,r3,2 443a0: d8c02b15 stw r3,172(sp) 443a4: 1805883a mov r2,r3 443a8: 183d970e bge r3,zero,43a08 <__alt_data_end+0xfffd1a08> 443ac: 003fd706 br 4430c <__alt_data_end+0xfffd230c> 443b0: 0005883a mov r2,zero 443b4: 003f8f06 br 441f4 <__alt_data_end+0xfffd21f4> 443b8: 9080004c andi r2,r18,1 443bc: 103f821e bne r2,zero,441c8 <__alt_data_end+0xfffd21c8> 443c0: d8802117 ldw r2,132(sp) 443c4: 1405c83a sub r2,r2,r16 443c8: d8803315 stw r2,204(sp) 443cc: b47ef426 beq r22,r17,43fa0 <__alt_data_end+0xfffd1fa0> 443d0: dd802617 ldw r22,152(sp) 443d4: 003f1206 br 44020 <__alt_data_end+0xfffd2020> 443d8: d8c02b03 ldbu r3,172(sp) 443dc: d8c02785 stb r3,158(sp) 443e0: 0038df06 br 42760 <__alt_data_end+0xfffd0760> 443e4: d8c02b03 ldbu r3,172(sp) 443e8: d8c02785 stb r3,158(sp) 443ec: 0038aa06 br 42698 <__alt_data_end+0xfffd0698> 443f0: d8c02b03 ldbu r3,172(sp) 443f4: d8c02785 stb r3,158(sp) 443f8: 003a4306 br 42d08 <__alt_data_end+0xfffd0d08> 443fc: d8c02b03 ldbu r3,172(sp) 44400: d8c02785 stb r3,158(sp) 44404: 003af506 br 42fdc <__alt_data_end+0xfffd0fdc> 44408: 0005883a mov r2,zero 4440c: 003d7b06 br 439fc <__alt_data_end+0xfffd19fc> 44410: d8802344 addi r2,sp,141 44414: 003f1006 br 44058 <__alt_data_end+0xfffd2058> 44418: d8c02b03 ldbu r3,172(sp) 4441c: d8c02785 stb r3,158(sp) 44420: 0038fd06 br 42818 <__alt_data_end+0xfffd0818> 44424: d8c02b03 ldbu r3,172(sp) 44428: d8c02785 stb r3,158(sp) 4442c: 003a9706 br 42e8c <__alt_data_end+0xfffd0e8c> 44430: d8c02b03 ldbu r3,172(sp) 44434: d8c02785 stb r3,158(sp) 44438: 003a1806 br 42c9c <__alt_data_end+0xfffd0c9c> 4443c: d8c02b03 ldbu r3,172(sp) 44440: d8c02785 stb r3,158(sp) 44444: 003abe06 br 42f40 <__alt_data_end+0xfffd0f40> 00044448 <__vfprintf_internal>: 44448: 00800174 movhi r2,5 4444c: 10908b04 addi r2,r2,16940 44450: 300f883a mov r7,r6 44454: 280d883a mov r6,r5 44458: 200b883a mov r5,r4 4445c: 11000017 ldw r4,0(r2) 44460: 004216c1 jmpi 4216c <___vfprintf_internal_r> 00044464 <__sbprintf>: 44464: 2880030b ldhu r2,12(r5) 44468: 2ac01917 ldw r11,100(r5) 4446c: 2a80038b ldhu r10,14(r5) 44470: 2a400717 ldw r9,28(r5) 44474: 2a000917 ldw r8,36(r5) 44478: defee204 addi sp,sp,-1144 4447c: 00c10004 movi r3,1024 44480: dc011a15 stw r16,1128(sp) 44484: 10bfff4c andi r2,r2,65533 44488: 2821883a mov r16,r5 4448c: d8cb883a add r5,sp,r3 44490: dc811c15 stw r18,1136(sp) 44494: dc411b15 stw r17,1132(sp) 44498: dfc11d15 stw ra,1140(sp) 4449c: 2025883a mov r18,r4 444a0: d881030d sth r2,1036(sp) 444a4: dac11915 stw r11,1124(sp) 444a8: da81038d sth r10,1038(sp) 444ac: da410715 stw r9,1052(sp) 444b0: da010915 stw r8,1060(sp) 444b4: dec10015 stw sp,1024(sp) 444b8: dec10415 stw sp,1040(sp) 444bc: d8c10215 stw r3,1032(sp) 444c0: d8c10515 stw r3,1044(sp) 444c4: d8010615 stw zero,1048(sp) 444c8: 004216c0 call 4216c <___vfprintf_internal_r> 444cc: 1023883a mov r17,r2 444d0: 10000416 blt r2,zero,444e4 <__sbprintf+0x80> 444d4: d9410004 addi r5,sp,1024 444d8: 9009883a mov r4,r18 444dc: 00461400 call 46140 <_fflush_r> 444e0: 10000d1e bne r2,zero,44518 <__sbprintf+0xb4> 444e4: d881030b ldhu r2,1036(sp) 444e8: 1080100c andi r2,r2,64 444ec: 10000326 beq r2,zero,444fc <__sbprintf+0x98> 444f0: 8080030b ldhu r2,12(r16) 444f4: 10801014 ori r2,r2,64 444f8: 8080030d sth r2,12(r16) 444fc: 8805883a mov r2,r17 44500: dfc11d17 ldw ra,1140(sp) 44504: dc811c17 ldw r18,1136(sp) 44508: dc411b17 ldw r17,1132(sp) 4450c: dc011a17 ldw r16,1128(sp) 44510: dec11e04 addi sp,sp,1144 44514: f800283a ret 44518: 047fffc4 movi r17,-1 4451c: 003ff106 br 444e4 <__alt_data_end+0xfffd24e4> 00044520 <__swsetup_r>: 44520: 00800174 movhi r2,5 44524: defffd04 addi sp,sp,-12 44528: 10908b04 addi r2,r2,16940 4452c: dc400115 stw r17,4(sp) 44530: 2023883a mov r17,r4 44534: 11000017 ldw r4,0(r2) 44538: dc000015 stw r16,0(sp) 4453c: dfc00215 stw ra,8(sp) 44540: 2821883a mov r16,r5 44544: 20000226 beq r4,zero,44550 <__swsetup_r+0x30> 44548: 20800e17 ldw r2,56(r4) 4454c: 10003126 beq r2,zero,44614 <__swsetup_r+0xf4> 44550: 8080030b ldhu r2,12(r16) 44554: 10c0020c andi r3,r2,8 44558: 1009883a mov r4,r2 4455c: 18000f26 beq r3,zero,4459c <__swsetup_r+0x7c> 44560: 80c00417 ldw r3,16(r16) 44564: 18001526 beq r3,zero,445bc <__swsetup_r+0x9c> 44568: 1100004c andi r4,r2,1 4456c: 20001c1e bne r4,zero,445e0 <__swsetup_r+0xc0> 44570: 1080008c andi r2,r2,2 44574: 1000291e bne r2,zero,4461c <__swsetup_r+0xfc> 44578: 80800517 ldw r2,20(r16) 4457c: 80800215 stw r2,8(r16) 44580: 18001c26 beq r3,zero,445f4 <__swsetup_r+0xd4> 44584: 0005883a mov r2,zero 44588: dfc00217 ldw ra,8(sp) 4458c: dc400117 ldw r17,4(sp) 44590: dc000017 ldw r16,0(sp) 44594: dec00304 addi sp,sp,12 44598: f800283a ret 4459c: 2080040c andi r2,r4,16 445a0: 10002e26 beq r2,zero,4465c <__swsetup_r+0x13c> 445a4: 2080010c andi r2,r4,4 445a8: 10001e1e bne r2,zero,44624 <__swsetup_r+0x104> 445ac: 80c00417 ldw r3,16(r16) 445b0: 20800214 ori r2,r4,8 445b4: 8080030d sth r2,12(r16) 445b8: 183feb1e bne r3,zero,44568 <__alt_data_end+0xfffd2568> 445bc: 1100a00c andi r4,r2,640 445c0: 01408004 movi r5,512 445c4: 217fe826 beq r4,r5,44568 <__alt_data_end+0xfffd2568> 445c8: 800b883a mov r5,r16 445cc: 8809883a mov r4,r17 445d0: 0046c140 call 46c14 <__smakebuf_r> 445d4: 8080030b ldhu r2,12(r16) 445d8: 80c00417 ldw r3,16(r16) 445dc: 003fe206 br 44568 <__alt_data_end+0xfffd2568> 445e0: 80800517 ldw r2,20(r16) 445e4: 80000215 stw zero,8(r16) 445e8: 0085c83a sub r2,zero,r2 445ec: 80800615 stw r2,24(r16) 445f0: 183fe41e bne r3,zero,44584 <__alt_data_end+0xfffd2584> 445f4: 80c0030b ldhu r3,12(r16) 445f8: 0005883a mov r2,zero 445fc: 1900200c andi r4,r3,128 44600: 203fe126 beq r4,zero,44588 <__alt_data_end+0xfffd2588> 44604: 18c01014 ori r3,r3,64 44608: 80c0030d sth r3,12(r16) 4460c: 00bfffc4 movi r2,-1 44610: 003fdd06 br 44588 <__alt_data_end+0xfffd2588> 44614: 004652c0 call 4652c <__sinit> 44618: 003fcd06 br 44550 <__alt_data_end+0xfffd2550> 4461c: 0005883a mov r2,zero 44620: 003fd606 br 4457c <__alt_data_end+0xfffd257c> 44624: 81400c17 ldw r5,48(r16) 44628: 28000626 beq r5,zero,44644 <__swsetup_r+0x124> 4462c: 80801004 addi r2,r16,64 44630: 28800326 beq r5,r2,44640 <__swsetup_r+0x120> 44634: 8809883a mov r4,r17 44638: 00466a00 call 466a0 <_free_r> 4463c: 8100030b ldhu r4,12(r16) 44640: 80000c15 stw zero,48(r16) 44644: 80c00417 ldw r3,16(r16) 44648: 00bff6c4 movi r2,-37 4464c: 1108703a and r4,r2,r4 44650: 80000115 stw zero,4(r16) 44654: 80c00015 stw r3,0(r16) 44658: 003fd506 br 445b0 <__alt_data_end+0xfffd25b0> 4465c: 00800244 movi r2,9 44660: 88800015 stw r2,0(r17) 44664: 20801014 ori r2,r4,64 44668: 8080030d sth r2,12(r16) 4466c: 00bfffc4 movi r2,-1 44670: 003fc506 br 44588 <__alt_data_end+0xfffd2588> 00044674 : 44674: defff204 addi sp,sp,-56 44678: ddc00b15 stw r23,44(sp) 4467c: 20800417 ldw r2,16(r4) 44680: 2dc00417 ldw r23,16(r5) 44684: dfc00d15 stw ra,52(sp) 44688: df000c15 stw fp,48(sp) 4468c: dd800a15 stw r22,40(sp) 44690: dd400915 stw r21,36(sp) 44694: dd000815 stw r20,32(sp) 44698: dcc00715 stw r19,28(sp) 4469c: dc800615 stw r18,24(sp) 446a0: dc400515 stw r17,20(sp) 446a4: dc000415 stw r16,16(sp) 446a8: 15c07a16 blt r2,r23,44894 446ac: bdffffc4 addi r23,r23,-1 446b0: bde9883a add r20,r23,r23 446b4: 28c00504 addi r3,r5,20 446b8: a529883a add r20,r20,r20 446bc: 1d39883a add fp,r3,r20 446c0: 24c00504 addi r19,r4,20 446c4: d9400215 stw r5,8(sp) 446c8: 9d29883a add r20,r19,r20 446cc: e1400017 ldw r5,0(fp) 446d0: d9000015 stw r4,0(sp) 446d4: a1000017 ldw r4,0(r20) 446d8: 29400044 addi r5,r5,1 446dc: d8c00115 stw r3,4(sp) 446e0: dd000315 stw r20,12(sp) 446e4: 004c93c0 call 4c93c <__udivsi3> 446e8: 1025883a mov r18,r2 446ec: 10003026 beq r2,zero,447b0 446f0: dc400117 ldw r17,4(sp) 446f4: 9829883a mov r20,r19 446f8: 002d883a mov r22,zero 446fc: 0021883a mov r16,zero 44700: 8d400017 ldw r21,0(r17) 44704: 900b883a mov r5,r18 44708: 8c400104 addi r17,r17,4 4470c: a93fffcc andi r4,r21,65535 44710: 004c9f80 call 4c9f8 <__mulsi3> 44714: a808d43a srli r4,r21,16 44718: 900b883a mov r5,r18 4471c: 15ad883a add r22,r2,r22 44720: 004c9f80 call 4c9f8 <__mulsi3> 44724: a1000017 ldw r4,0(r20) 44728: b00cd43a srli r6,r22,16 4472c: b0ffffcc andi r3,r22,65535 44730: 217fffcc andi r5,r4,65535 44734: 2c21883a add r16,r5,r16 44738: 80c7c83a sub r3,r16,r3 4473c: 2008d43a srli r4,r4,16 44740: 1185883a add r2,r2,r6 44744: 1821d43a srai r16,r3,16 44748: 117fffcc andi r5,r2,65535 4474c: 2149c83a sub r4,r4,r5 44750: 2421883a add r16,r4,r16 44754: 8008943a slli r4,r16,16 44758: 18ffffcc andi r3,r3,65535 4475c: 102cd43a srli r22,r2,16 44760: 20c8b03a or r4,r4,r3 44764: a1000015 stw r4,0(r20) 44768: 8021d43a srai r16,r16,16 4476c: a5000104 addi r20,r20,4 44770: e47fe32e bgeu fp,r17,44700 <__alt_data_end+0xfffd2700> 44774: d8c00317 ldw r3,12(sp) 44778: 18800017 ldw r2,0(r3) 4477c: 10000c1e bne r2,zero,447b0 44780: 18bfff04 addi r2,r3,-4 44784: 9880082e bgeu r19,r2,447a8 44788: 18ffff17 ldw r3,-4(r3) 4478c: 18000326 beq r3,zero,4479c 44790: 00000506 br 447a8 44794: 10c00017 ldw r3,0(r2) 44798: 1800031e bne r3,zero,447a8 4479c: 10bfff04 addi r2,r2,-4 447a0: bdffffc4 addi r23,r23,-1 447a4: 98bffb36 bltu r19,r2,44794 <__alt_data_end+0xfffd2794> 447a8: d8c00017 ldw r3,0(sp) 447ac: 1dc00415 stw r23,16(r3) 447b0: d9400217 ldw r5,8(sp) 447b4: d9000017 ldw r4,0(sp) 447b8: 00482b40 call 482b4 <__mcmp> 447bc: 10002816 blt r2,zero,44860 447c0: dc400117 ldw r17,4(sp) 447c4: 94800044 addi r18,r18,1 447c8: 980d883a mov r6,r19 447cc: 0007883a mov r3,zero 447d0: 31000017 ldw r4,0(r6) 447d4: 89400017 ldw r5,0(r17) 447d8: 31800104 addi r6,r6,4 447dc: 20bfffcc andi r2,r4,65535 447e0: 10c7883a add r3,r2,r3 447e4: 28bfffcc andi r2,r5,65535 447e8: 1885c83a sub r2,r3,r2 447ec: 280ad43a srli r5,r5,16 447f0: 2008d43a srli r4,r4,16 447f4: 1007d43a srai r3,r2,16 447f8: 10bfffcc andi r2,r2,65535 447fc: 2149c83a sub r4,r4,r5 44800: 20c9883a add r4,r4,r3 44804: 200a943a slli r5,r4,16 44808: 8c400104 addi r17,r17,4 4480c: 2007d43a srai r3,r4,16 44810: 2884b03a or r2,r5,r2 44814: 30bfff15 stw r2,-4(r6) 44818: e47fed2e bgeu fp,r17,447d0 <__alt_data_end+0xfffd27d0> 4481c: bdc5883a add r2,r23,r23 44820: 1085883a add r2,r2,r2 44824: 9887883a add r3,r19,r2 44828: 18800017 ldw r2,0(r3) 4482c: 10000c1e bne r2,zero,44860 44830: 18bfff04 addi r2,r3,-4 44834: 9880082e bgeu r19,r2,44858 44838: 18ffff17 ldw r3,-4(r3) 4483c: 18000326 beq r3,zero,4484c 44840: 00000506 br 44858 44844: 10c00017 ldw r3,0(r2) 44848: 1800031e bne r3,zero,44858 4484c: 10bfff04 addi r2,r2,-4 44850: bdffffc4 addi r23,r23,-1 44854: 98bffb36 bltu r19,r2,44844 <__alt_data_end+0xfffd2844> 44858: d8c00017 ldw r3,0(sp) 4485c: 1dc00415 stw r23,16(r3) 44860: 9005883a mov r2,r18 44864: dfc00d17 ldw ra,52(sp) 44868: df000c17 ldw fp,48(sp) 4486c: ddc00b17 ldw r23,44(sp) 44870: dd800a17 ldw r22,40(sp) 44874: dd400917 ldw r21,36(sp) 44878: dd000817 ldw r20,32(sp) 4487c: dcc00717 ldw r19,28(sp) 44880: dc800617 ldw r18,24(sp) 44884: dc400517 ldw r17,20(sp) 44888: dc000417 ldw r16,16(sp) 4488c: dec00e04 addi sp,sp,56 44890: f800283a ret 44894: 0005883a mov r2,zero 44898: 003ff206 br 44864 <__alt_data_end+0xfffd2864> 0004489c <_dtoa_r>: 4489c: 20801017 ldw r2,64(r4) 448a0: deffde04 addi sp,sp,-136 448a4: df002015 stw fp,128(sp) 448a8: dcc01b15 stw r19,108(sp) 448ac: dc801a15 stw r18,104(sp) 448b0: dc401915 stw r17,100(sp) 448b4: dc001815 stw r16,96(sp) 448b8: dfc02115 stw ra,132(sp) 448bc: ddc01f15 stw r23,124(sp) 448c0: dd801e15 stw r22,120(sp) 448c4: dd401d15 stw r21,116(sp) 448c8: dd001c15 stw r20,112(sp) 448cc: d9c00315 stw r7,12(sp) 448d0: 2039883a mov fp,r4 448d4: 3023883a mov r17,r6 448d8: 2825883a mov r18,r5 448dc: dc002417 ldw r16,144(sp) 448e0: 3027883a mov r19,r6 448e4: 10000826 beq r2,zero,44908 <_dtoa_r+0x6c> 448e8: 21801117 ldw r6,68(r4) 448ec: 00c00044 movi r3,1 448f0: 100b883a mov r5,r2 448f4: 1986983a sll r3,r3,r6 448f8: 11800115 stw r6,4(r2) 448fc: 10c00215 stw r3,8(r2) 44900: 00479d80 call 479d8 <_Bfree> 44904: e0001015 stw zero,64(fp) 44908: 88002e16 blt r17,zero,449c4 <_dtoa_r+0x128> 4490c: 80000015 stw zero,0(r16) 44910: 889ffc2c andhi r2,r17,32752 44914: 00dffc34 movhi r3,32752 44918: 10c01c26 beq r2,r3,4498c <_dtoa_r+0xf0> 4491c: 000d883a mov r6,zero 44920: 000f883a mov r7,zero 44924: 9009883a mov r4,r18 44928: 980b883a mov r5,r19 4492c: 004d3f00 call 4d3f0 <__eqdf2> 44930: 10002b1e bne r2,zero,449e0 <_dtoa_r+0x144> 44934: d9c02317 ldw r7,140(sp) 44938: 00800044 movi r2,1 4493c: 38800015 stw r2,0(r7) 44940: d8802517 ldw r2,148(sp) 44944: 10019e26 beq r2,zero,44fc0 <_dtoa_r+0x724> 44948: d8c02517 ldw r3,148(sp) 4494c: 00800174 movhi r2,5 44950: 10888744 addi r2,r2,8733 44954: 18800015 stw r2,0(r3) 44958: 10bfffc4 addi r2,r2,-1 4495c: dfc02117 ldw ra,132(sp) 44960: df002017 ldw fp,128(sp) 44964: ddc01f17 ldw r23,124(sp) 44968: dd801e17 ldw r22,120(sp) 4496c: dd401d17 ldw r21,116(sp) 44970: dd001c17 ldw r20,112(sp) 44974: dcc01b17 ldw r19,108(sp) 44978: dc801a17 ldw r18,104(sp) 4497c: dc401917 ldw r17,100(sp) 44980: dc001817 ldw r16,96(sp) 44984: dec02204 addi sp,sp,136 44988: f800283a ret 4498c: d8c02317 ldw r3,140(sp) 44990: 0089c3c4 movi r2,9999 44994: 18800015 stw r2,0(r3) 44998: 90017726 beq r18,zero,44f78 <_dtoa_r+0x6dc> 4499c: 00800174 movhi r2,5 449a0: 10889304 addi r2,r2,8780 449a4: d9002517 ldw r4,148(sp) 449a8: 203fec26 beq r4,zero,4495c <__alt_data_end+0xfffd295c> 449ac: 10c000c7 ldb r3,3(r2) 449b0: 1801781e bne r3,zero,44f94 <_dtoa_r+0x6f8> 449b4: 10c000c4 addi r3,r2,3 449b8: d9802517 ldw r6,148(sp) 449bc: 30c00015 stw r3,0(r6) 449c0: 003fe606 br 4495c <__alt_data_end+0xfffd295c> 449c4: 04e00034 movhi r19,32768 449c8: 9cffffc4 addi r19,r19,-1 449cc: 00800044 movi r2,1 449d0: 8ce6703a and r19,r17,r19 449d4: 80800015 stw r2,0(r16) 449d8: 9823883a mov r17,r19 449dc: 003fcc06 br 44910 <__alt_data_end+0xfffd2910> 449e0: d8800204 addi r2,sp,8 449e4: d8800015 stw r2,0(sp) 449e8: d9c00104 addi r7,sp,4 449ec: 900b883a mov r5,r18 449f0: 980d883a mov r6,r19 449f4: e009883a mov r4,fp 449f8: 8820d53a srli r16,r17,20 449fc: 00486800 call 48680 <__d2b> 44a00: d8800915 stw r2,36(sp) 44a04: 8001651e bne r16,zero,44f9c <_dtoa_r+0x700> 44a08: dd800217 ldw r22,8(sp) 44a0c: dc000117 ldw r16,4(sp) 44a10: 00800804 movi r2,32 44a14: b421883a add r16,r22,r16 44a18: 80c10c84 addi r3,r16,1074 44a1c: 10c2d10e bge r2,r3,45564 <_dtoa_r+0xcc8> 44a20: 00801004 movi r2,64 44a24: 81010484 addi r4,r16,1042 44a28: 10c7c83a sub r3,r2,r3 44a2c: 9108d83a srl r4,r18,r4 44a30: 88e2983a sll r17,r17,r3 44a34: 2448b03a or r4,r4,r17 44a38: 004e7b00 call 4e7b0 <__floatunsidf> 44a3c: 017f8434 movhi r5,65040 44a40: 01800044 movi r6,1 44a44: 1009883a mov r4,r2 44a48: 194b883a add r5,r3,r5 44a4c: 843fffc4 addi r16,r16,-1 44a50: d9801115 stw r6,68(sp) 44a54: 000d883a mov r6,zero 44a58: 01cffe34 movhi r7,16376 44a5c: 004deb40 call 4deb4 <__subdf3> 44a60: 0198dbf4 movhi r6,25455 44a64: 01cff4f4 movhi r7,16339 44a68: 3190d844 addi r6,r6,17249 44a6c: 39e1e9c4 addi r7,r7,-30809 44a70: 1009883a mov r4,r2 44a74: 180b883a mov r5,r3 44a78: 004d6480 call 4d648 <__muldf3> 44a7c: 01a2d874 movhi r6,35681 44a80: 01cff1f4 movhi r7,16327 44a84: 31b22cc4 addi r6,r6,-14157 44a88: 39e28a04 addi r7,r7,-30168 44a8c: 180b883a mov r5,r3 44a90: 1009883a mov r4,r2 44a94: 00413e40 call 413e4 <__adddf3> 44a98: 8009883a mov r4,r16 44a9c: 1029883a mov r20,r2 44aa0: 1823883a mov r17,r3 44aa4: 0041d100 call 41d10 <__floatsidf> 44aa8: 019427f4 movhi r6,20639 44aac: 01cff4f4 movhi r7,16339 44ab0: 319e7ec4 addi r6,r6,31227 44ab4: 39d104c4 addi r7,r7,17427 44ab8: 1009883a mov r4,r2 44abc: 180b883a mov r5,r3 44ac0: 004d6480 call 4d648 <__muldf3> 44ac4: 100d883a mov r6,r2 44ac8: 180f883a mov r7,r3 44acc: a009883a mov r4,r20 44ad0: 880b883a mov r5,r17 44ad4: 00413e40 call 413e4 <__adddf3> 44ad8: 1009883a mov r4,r2 44adc: 180b883a mov r5,r3 44ae0: 1029883a mov r20,r2 44ae4: 1823883a mov r17,r3 44ae8: 0041c900 call 41c90 <__fixdfsi> 44aec: 000d883a mov r6,zero 44af0: 000f883a mov r7,zero 44af4: a009883a mov r4,r20 44af8: 880b883a mov r5,r17 44afc: d8800515 stw r2,20(sp) 44b00: 004d5540 call 4d554 <__ledf2> 44b04: 10028716 blt r2,zero,45524 <_dtoa_r+0xc88> 44b08: d8c00517 ldw r3,20(sp) 44b0c: 00800584 movi r2,22 44b10: 10c27536 bltu r2,r3,454e8 <_dtoa_r+0xc4c> 44b14: 180490fa slli r2,r3,3 44b18: 00c00174 movhi r3,5 44b1c: 18c8ae04 addi r3,r3,8888 44b20: 1885883a add r2,r3,r2 44b24: 11000017 ldw r4,0(r2) 44b28: 11400117 ldw r5,4(r2) 44b2c: 900d883a mov r6,r18 44b30: 980f883a mov r7,r19 44b34: 004d4780 call 4d478 <__gedf2> 44b38: 00828d0e bge zero,r2,45570 <_dtoa_r+0xcd4> 44b3c: d9000517 ldw r4,20(sp) 44b40: d8000e15 stw zero,56(sp) 44b44: 213fffc4 addi r4,r4,-1 44b48: d9000515 stw r4,20(sp) 44b4c: b42dc83a sub r22,r22,r16 44b50: b5bfffc4 addi r22,r22,-1 44b54: b0026f16 blt r22,zero,45514 <_dtoa_r+0xc78> 44b58: d8000815 stw zero,32(sp) 44b5c: d9c00517 ldw r7,20(sp) 44b60: 38026416 blt r7,zero,454f4 <_dtoa_r+0xc58> 44b64: b1ed883a add r22,r22,r7 44b68: d9c00d15 stw r7,52(sp) 44b6c: d8000a15 stw zero,40(sp) 44b70: d9800317 ldw r6,12(sp) 44b74: 00800244 movi r2,9 44b78: 11811436 bltu r2,r6,44fcc <_dtoa_r+0x730> 44b7c: 00800144 movi r2,5 44b80: 1184e10e bge r2,r6,45f08 <_dtoa_r+0x166c> 44b84: 31bfff04 addi r6,r6,-4 44b88: d9800315 stw r6,12(sp) 44b8c: 0023883a mov r17,zero 44b90: d9800317 ldw r6,12(sp) 44b94: 008000c4 movi r2,3 44b98: 30836726 beq r6,r2,45938 <_dtoa_r+0x109c> 44b9c: 1183410e bge r2,r6,458a4 <_dtoa_r+0x1008> 44ba0: d9c00317 ldw r7,12(sp) 44ba4: 00800104 movi r2,4 44ba8: 38827c26 beq r7,r2,4559c <_dtoa_r+0xd00> 44bac: 00800144 movi r2,5 44bb0: 3884c41e bne r7,r2,45ec4 <_dtoa_r+0x1628> 44bb4: 00800044 movi r2,1 44bb8: d8800b15 stw r2,44(sp) 44bbc: d8c00517 ldw r3,20(sp) 44bc0: d9002217 ldw r4,136(sp) 44bc4: 1907883a add r3,r3,r4 44bc8: 19800044 addi r6,r3,1 44bcc: d8c00c15 stw r3,48(sp) 44bd0: d9800615 stw r6,24(sp) 44bd4: 0183a40e bge zero,r6,45a68 <_dtoa_r+0x11cc> 44bd8: d9800617 ldw r6,24(sp) 44bdc: 3021883a mov r16,r6 44be0: e0001115 stw zero,68(fp) 44be4: 008005c4 movi r2,23 44be8: 1184c92e bgeu r2,r6,45f10 <_dtoa_r+0x1674> 44bec: 00c00044 movi r3,1 44bf0: 00800104 movi r2,4 44bf4: 1085883a add r2,r2,r2 44bf8: 11000504 addi r4,r2,20 44bfc: 180b883a mov r5,r3 44c00: 18c00044 addi r3,r3,1 44c04: 313ffb2e bgeu r6,r4,44bf4 <__alt_data_end+0xfffd2bf4> 44c08: e1401115 stw r5,68(fp) 44c0c: e009883a mov r4,fp 44c10: 00479300 call 47930 <_Balloc> 44c14: d8800715 stw r2,28(sp) 44c18: e0801015 stw r2,64(fp) 44c1c: 00800384 movi r2,14 44c20: 1400f736 bltu r2,r16,45000 <_dtoa_r+0x764> 44c24: 8800f626 beq r17,zero,45000 <_dtoa_r+0x764> 44c28: d9c00517 ldw r7,20(sp) 44c2c: 01c39a0e bge zero,r7,45a98 <_dtoa_r+0x11fc> 44c30: 388003cc andi r2,r7,15 44c34: 100490fa slli r2,r2,3 44c38: 382bd13a srai r21,r7,4 44c3c: 00c00174 movhi r3,5 44c40: 18c8ae04 addi r3,r3,8888 44c44: 1885883a add r2,r3,r2 44c48: a8c0040c andi r3,r21,16 44c4c: 12400017 ldw r9,0(r2) 44c50: 12000117 ldw r8,4(r2) 44c54: 18037926 beq r3,zero,45a3c <_dtoa_r+0x11a0> 44c58: 00800174 movhi r2,5 44c5c: 1088a404 addi r2,r2,8848 44c60: 11800817 ldw r6,32(r2) 44c64: 11c00917 ldw r7,36(r2) 44c68: 9009883a mov r4,r18 44c6c: 980b883a mov r5,r19 44c70: da001715 stw r8,92(sp) 44c74: da401615 stw r9,88(sp) 44c78: 004ca200 call 4ca20 <__divdf3> 44c7c: da001717 ldw r8,92(sp) 44c80: da401617 ldw r9,88(sp) 44c84: ad4003cc andi r21,r21,15 44c88: 040000c4 movi r16,3 44c8c: 1023883a mov r17,r2 44c90: 1829883a mov r20,r3 44c94: a8001126 beq r21,zero,44cdc <_dtoa_r+0x440> 44c98: 05c00174 movhi r23,5 44c9c: bdc8a404 addi r23,r23,8848 44ca0: 4805883a mov r2,r9 44ca4: 4007883a mov r3,r8 44ca8: a980004c andi r6,r21,1 44cac: 1009883a mov r4,r2 44cb0: a82bd07a srai r21,r21,1 44cb4: 180b883a mov r5,r3 44cb8: 30000426 beq r6,zero,44ccc <_dtoa_r+0x430> 44cbc: b9800017 ldw r6,0(r23) 44cc0: b9c00117 ldw r7,4(r23) 44cc4: 84000044 addi r16,r16,1 44cc8: 004d6480 call 4d648 <__muldf3> 44ccc: bdc00204 addi r23,r23,8 44cd0: a83ff51e bne r21,zero,44ca8 <__alt_data_end+0xfffd2ca8> 44cd4: 1013883a mov r9,r2 44cd8: 1811883a mov r8,r3 44cdc: 480d883a mov r6,r9 44ce0: 400f883a mov r7,r8 44ce4: 8809883a mov r4,r17 44ce8: a00b883a mov r5,r20 44cec: 004ca200 call 4ca20 <__divdf3> 44cf0: d8800f15 stw r2,60(sp) 44cf4: d8c01015 stw r3,64(sp) 44cf8: d8c00e17 ldw r3,56(sp) 44cfc: 18000626 beq r3,zero,44d18 <_dtoa_r+0x47c> 44d00: d9000f17 ldw r4,60(sp) 44d04: d9401017 ldw r5,64(sp) 44d08: 000d883a mov r6,zero 44d0c: 01cffc34 movhi r7,16368 44d10: 004d5540 call 4d554 <__ledf2> 44d14: 10040b16 blt r2,zero,45d44 <_dtoa_r+0x14a8> 44d18: 8009883a mov r4,r16 44d1c: 0041d100 call 41d10 <__floatsidf> 44d20: d9800f17 ldw r6,60(sp) 44d24: d9c01017 ldw r7,64(sp) 44d28: 1009883a mov r4,r2 44d2c: 180b883a mov r5,r3 44d30: 004d6480 call 4d648 <__muldf3> 44d34: 000d883a mov r6,zero 44d38: 01d00734 movhi r7,16412 44d3c: 1009883a mov r4,r2 44d40: 180b883a mov r5,r3 44d44: 00413e40 call 413e4 <__adddf3> 44d48: 1021883a mov r16,r2 44d4c: d8800617 ldw r2,24(sp) 44d50: 047f3034 movhi r17,64704 44d54: 1c63883a add r17,r3,r17 44d58: 10031826 beq r2,zero,459bc <_dtoa_r+0x1120> 44d5c: d8c00517 ldw r3,20(sp) 44d60: db000617 ldw r12,24(sp) 44d64: d8c01315 stw r3,76(sp) 44d68: d9000b17 ldw r4,44(sp) 44d6c: 20038f26 beq r4,zero,45bac <_dtoa_r+0x1310> 44d70: 60bfffc4 addi r2,r12,-1 44d74: 100490fa slli r2,r2,3 44d78: 00c00174 movhi r3,5 44d7c: 18c8ae04 addi r3,r3,8888 44d80: 1885883a add r2,r3,r2 44d84: 11800017 ldw r6,0(r2) 44d88: 11c00117 ldw r7,4(r2) 44d8c: d8800717 ldw r2,28(sp) 44d90: 0009883a mov r4,zero 44d94: 014ff834 movhi r5,16352 44d98: db001615 stw r12,88(sp) 44d9c: 15c00044 addi r23,r2,1 44da0: 004ca200 call 4ca20 <__divdf3> 44da4: 800d883a mov r6,r16 44da8: 880f883a mov r7,r17 44dac: 1009883a mov r4,r2 44db0: 180b883a mov r5,r3 44db4: 004deb40 call 4deb4 <__subdf3> 44db8: d9401017 ldw r5,64(sp) 44dbc: d9000f17 ldw r4,60(sp) 44dc0: 102b883a mov r21,r2 44dc4: d8c01215 stw r3,72(sp) 44dc8: 0041c900 call 41c90 <__fixdfsi> 44dcc: 1009883a mov r4,r2 44dd0: 1029883a mov r20,r2 44dd4: 0041d100 call 41d10 <__floatsidf> 44dd8: d9000f17 ldw r4,60(sp) 44ddc: d9401017 ldw r5,64(sp) 44de0: 100d883a mov r6,r2 44de4: 180f883a mov r7,r3 44de8: 004deb40 call 4deb4 <__subdf3> 44dec: 1823883a mov r17,r3 44df0: d8c00717 ldw r3,28(sp) 44df4: d9401217 ldw r5,72(sp) 44df8: a2000c04 addi r8,r20,48 44dfc: 1021883a mov r16,r2 44e00: 1a000005 stb r8,0(r3) 44e04: 800d883a mov r6,r16 44e08: 880f883a mov r7,r17 44e0c: a809883a mov r4,r21 44e10: 4029883a mov r20,r8 44e14: 004d4780 call 4d478 <__gedf2> 44e18: 00841d16 blt zero,r2,45e90 <_dtoa_r+0x15f4> 44e1c: 800d883a mov r6,r16 44e20: 880f883a mov r7,r17 44e24: 0009883a mov r4,zero 44e28: 014ffc34 movhi r5,16368 44e2c: 004deb40 call 4deb4 <__subdf3> 44e30: d9401217 ldw r5,72(sp) 44e34: 100d883a mov r6,r2 44e38: 180f883a mov r7,r3 44e3c: a809883a mov r4,r21 44e40: 004d4780 call 4d478 <__gedf2> 44e44: db001617 ldw r12,88(sp) 44e48: 00840e16 blt zero,r2,45e84 <_dtoa_r+0x15e8> 44e4c: 00800044 movi r2,1 44e50: 13006b0e bge r2,r12,45000 <_dtoa_r+0x764> 44e54: d9000717 ldw r4,28(sp) 44e58: dd800f15 stw r22,60(sp) 44e5c: dcc01015 stw r19,64(sp) 44e60: 2319883a add r12,r4,r12 44e64: dcc01217 ldw r19,72(sp) 44e68: 602d883a mov r22,r12 44e6c: dc801215 stw r18,72(sp) 44e70: b825883a mov r18,r23 44e74: 00000906 br 44e9c <_dtoa_r+0x600> 44e78: 004deb40 call 4deb4 <__subdf3> 44e7c: a80d883a mov r6,r21 44e80: 980f883a mov r7,r19 44e84: 1009883a mov r4,r2 44e88: 180b883a mov r5,r3 44e8c: 004d5540 call 4d554 <__ledf2> 44e90: 1003e816 blt r2,zero,45e34 <_dtoa_r+0x1598> 44e94: b825883a mov r18,r23 44e98: bd83e926 beq r23,r22,45e40 <_dtoa_r+0x15a4> 44e9c: a809883a mov r4,r21 44ea0: 980b883a mov r5,r19 44ea4: 000d883a mov r6,zero 44ea8: 01d00934 movhi r7,16420 44eac: 004d6480 call 4d648 <__muldf3> 44eb0: 000d883a mov r6,zero 44eb4: 01d00934 movhi r7,16420 44eb8: 8009883a mov r4,r16 44ebc: 880b883a mov r5,r17 44ec0: 102b883a mov r21,r2 44ec4: 1827883a mov r19,r3 44ec8: 004d6480 call 4d648 <__muldf3> 44ecc: 180b883a mov r5,r3 44ed0: 1009883a mov r4,r2 44ed4: 1821883a mov r16,r3 44ed8: 1023883a mov r17,r2 44edc: 0041c900 call 41c90 <__fixdfsi> 44ee0: 1009883a mov r4,r2 44ee4: 1029883a mov r20,r2 44ee8: 0041d100 call 41d10 <__floatsidf> 44eec: 8809883a mov r4,r17 44ef0: 800b883a mov r5,r16 44ef4: 100d883a mov r6,r2 44ef8: 180f883a mov r7,r3 44efc: 004deb40 call 4deb4 <__subdf3> 44f00: a5000c04 addi r20,r20,48 44f04: a80d883a mov r6,r21 44f08: 980f883a mov r7,r19 44f0c: 1009883a mov r4,r2 44f10: 180b883a mov r5,r3 44f14: 95000005 stb r20,0(r18) 44f18: 1021883a mov r16,r2 44f1c: 1823883a mov r17,r3 44f20: 004d5540 call 4d554 <__ledf2> 44f24: bdc00044 addi r23,r23,1 44f28: 800d883a mov r6,r16 44f2c: 880f883a mov r7,r17 44f30: 0009883a mov r4,zero 44f34: 014ffc34 movhi r5,16368 44f38: 103fcf0e bge r2,zero,44e78 <__alt_data_end+0xfffd2e78> 44f3c: d8c01317 ldw r3,76(sp) 44f40: d8c00515 stw r3,20(sp) 44f44: d9400917 ldw r5,36(sp) 44f48: e009883a mov r4,fp 44f4c: 00479d80 call 479d8 <_Bfree> 44f50: d9000517 ldw r4,20(sp) 44f54: d9802317 ldw r6,140(sp) 44f58: d9c02517 ldw r7,148(sp) 44f5c: b8000005 stb zero,0(r23) 44f60: 20800044 addi r2,r4,1 44f64: 30800015 stw r2,0(r6) 44f68: 3802aa26 beq r7,zero,45a14 <_dtoa_r+0x1178> 44f6c: 3dc00015 stw r23,0(r7) 44f70: d8800717 ldw r2,28(sp) 44f74: 003e7906 br 4495c <__alt_data_end+0xfffd295c> 44f78: 00800434 movhi r2,16 44f7c: 10bfffc4 addi r2,r2,-1 44f80: 88a2703a and r17,r17,r2 44f84: 883e851e bne r17,zero,4499c <__alt_data_end+0xfffd299c> 44f88: 00800174 movhi r2,5 44f8c: 10889004 addi r2,r2,8768 44f90: 003e8406 br 449a4 <__alt_data_end+0xfffd29a4> 44f94: 10c00204 addi r3,r2,8 44f98: 003e8706 br 449b8 <__alt_data_end+0xfffd29b8> 44f9c: 01400434 movhi r5,16 44fa0: 297fffc4 addi r5,r5,-1 44fa4: 994a703a and r5,r19,r5 44fa8: 9009883a mov r4,r18 44fac: 843f0044 addi r16,r16,-1023 44fb0: 294ffc34 orhi r5,r5,16368 44fb4: dd800217 ldw r22,8(sp) 44fb8: d8001115 stw zero,68(sp) 44fbc: 003ea506 br 44a54 <__alt_data_end+0xfffd2a54> 44fc0: 00800174 movhi r2,5 44fc4: 10888704 addi r2,r2,8732 44fc8: 003e6406 br 4495c <__alt_data_end+0xfffd295c> 44fcc: e0001115 stw zero,68(fp) 44fd0: 000b883a mov r5,zero 44fd4: e009883a mov r4,fp 44fd8: 00479300 call 47930 <_Balloc> 44fdc: 01bfffc4 movi r6,-1 44fe0: 01c00044 movi r7,1 44fe4: d8800715 stw r2,28(sp) 44fe8: d9800c15 stw r6,48(sp) 44fec: e0801015 stw r2,64(fp) 44ff0: d8000315 stw zero,12(sp) 44ff4: d9c00b15 stw r7,44(sp) 44ff8: d9800615 stw r6,24(sp) 44ffc: d8002215 stw zero,136(sp) 45000: d8800117 ldw r2,4(sp) 45004: 10008916 blt r2,zero,4522c <_dtoa_r+0x990> 45008: d9000517 ldw r4,20(sp) 4500c: 00c00384 movi r3,14 45010: 19008616 blt r3,r4,4522c <_dtoa_r+0x990> 45014: 200490fa slli r2,r4,3 45018: 00c00174 movhi r3,5 4501c: d9802217 ldw r6,136(sp) 45020: 18c8ae04 addi r3,r3,8888 45024: 1885883a add r2,r3,r2 45028: 14000017 ldw r16,0(r2) 4502c: 14400117 ldw r17,4(r2) 45030: 30016316 blt r6,zero,455c0 <_dtoa_r+0xd24> 45034: 800d883a mov r6,r16 45038: 880f883a mov r7,r17 4503c: 9009883a mov r4,r18 45040: 980b883a mov r5,r19 45044: 004ca200 call 4ca20 <__divdf3> 45048: 180b883a mov r5,r3 4504c: 1009883a mov r4,r2 45050: 0041c900 call 41c90 <__fixdfsi> 45054: 1009883a mov r4,r2 45058: 102b883a mov r21,r2 4505c: 0041d100 call 41d10 <__floatsidf> 45060: 800d883a mov r6,r16 45064: 880f883a mov r7,r17 45068: 1009883a mov r4,r2 4506c: 180b883a mov r5,r3 45070: 004d6480 call 4d648 <__muldf3> 45074: 100d883a mov r6,r2 45078: 180f883a mov r7,r3 4507c: 9009883a mov r4,r18 45080: 980b883a mov r5,r19 45084: 004deb40 call 4deb4 <__subdf3> 45088: d9c00717 ldw r7,28(sp) 4508c: 1009883a mov r4,r2 45090: a8800c04 addi r2,r21,48 45094: 38800005 stb r2,0(r7) 45098: 3dc00044 addi r23,r7,1 4509c: d9c00617 ldw r7,24(sp) 450a0: 01800044 movi r6,1 450a4: 180b883a mov r5,r3 450a8: 2005883a mov r2,r4 450ac: 39803826 beq r7,r6,45190 <_dtoa_r+0x8f4> 450b0: 000d883a mov r6,zero 450b4: 01d00934 movhi r7,16420 450b8: 004d6480 call 4d648 <__muldf3> 450bc: 000d883a mov r6,zero 450c0: 000f883a mov r7,zero 450c4: 1009883a mov r4,r2 450c8: 180b883a mov r5,r3 450cc: 1025883a mov r18,r2 450d0: 1827883a mov r19,r3 450d4: 004d3f00 call 4d3f0 <__eqdf2> 450d8: 103f9a26 beq r2,zero,44f44 <__alt_data_end+0xfffd2f44> 450dc: d9c00617 ldw r7,24(sp) 450e0: d8c00717 ldw r3,28(sp) 450e4: b829883a mov r20,r23 450e8: 38bfffc4 addi r2,r7,-1 450ec: 18ad883a add r22,r3,r2 450f0: 00000a06 br 4511c <_dtoa_r+0x880> 450f4: 004d6480 call 4d648 <__muldf3> 450f8: 000d883a mov r6,zero 450fc: 000f883a mov r7,zero 45100: 1009883a mov r4,r2 45104: 180b883a mov r5,r3 45108: 1025883a mov r18,r2 4510c: 1827883a mov r19,r3 45110: b829883a mov r20,r23 45114: 004d3f00 call 4d3f0 <__eqdf2> 45118: 103f8a26 beq r2,zero,44f44 <__alt_data_end+0xfffd2f44> 4511c: 800d883a mov r6,r16 45120: 880f883a mov r7,r17 45124: 9009883a mov r4,r18 45128: 980b883a mov r5,r19 4512c: 004ca200 call 4ca20 <__divdf3> 45130: 180b883a mov r5,r3 45134: 1009883a mov r4,r2 45138: 0041c900 call 41c90 <__fixdfsi> 4513c: 1009883a mov r4,r2 45140: 102b883a mov r21,r2 45144: 0041d100 call 41d10 <__floatsidf> 45148: 800d883a mov r6,r16 4514c: 880f883a mov r7,r17 45150: 1009883a mov r4,r2 45154: 180b883a mov r5,r3 45158: 004d6480 call 4d648 <__muldf3> 4515c: 100d883a mov r6,r2 45160: 180f883a mov r7,r3 45164: 9009883a mov r4,r18 45168: 980b883a mov r5,r19 4516c: 004deb40 call 4deb4 <__subdf3> 45170: aa000c04 addi r8,r21,48 45174: a2000005 stb r8,0(r20) 45178: 000d883a mov r6,zero 4517c: 01d00934 movhi r7,16420 45180: 1009883a mov r4,r2 45184: 180b883a mov r5,r3 45188: a5c00044 addi r23,r20,1 4518c: b53fd91e bne r22,r20,450f4 <__alt_data_end+0xfffd30f4> 45190: 100d883a mov r6,r2 45194: 180f883a mov r7,r3 45198: 1009883a mov r4,r2 4519c: 180b883a mov r5,r3 451a0: 00413e40 call 413e4 <__adddf3> 451a4: 100d883a mov r6,r2 451a8: 180f883a mov r7,r3 451ac: 8009883a mov r4,r16 451b0: 880b883a mov r5,r17 451b4: 1027883a mov r19,r2 451b8: 1825883a mov r18,r3 451bc: 004d5540 call 4d554 <__ledf2> 451c0: 10000816 blt r2,zero,451e4 <_dtoa_r+0x948> 451c4: 980d883a mov r6,r19 451c8: 900f883a mov r7,r18 451cc: 8009883a mov r4,r16 451d0: 880b883a mov r5,r17 451d4: 004d3f00 call 4d3f0 <__eqdf2> 451d8: 103f5a1e bne r2,zero,44f44 <__alt_data_end+0xfffd2f44> 451dc: ad40004c andi r21,r21,1 451e0: a83f5826 beq r21,zero,44f44 <__alt_data_end+0xfffd2f44> 451e4: bd3fffc3 ldbu r20,-1(r23) 451e8: b8bfffc4 addi r2,r23,-1 451ec: 1007883a mov r3,r2 451f0: 01400e44 movi r5,57 451f4: d9800717 ldw r6,28(sp) 451f8: 00000506 br 45210 <_dtoa_r+0x974> 451fc: 18ffffc4 addi r3,r3,-1 45200: 11824726 beq r2,r6,45b20 <_dtoa_r+0x1284> 45204: 1d000003 ldbu r20,0(r3) 45208: 102f883a mov r23,r2 4520c: 10bfffc4 addi r2,r2,-1 45210: a1003fcc andi r4,r20,255 45214: 2100201c xori r4,r4,128 45218: 213fe004 addi r4,r4,-128 4521c: 217ff726 beq r4,r5,451fc <__alt_data_end+0xfffd31fc> 45220: a2000044 addi r8,r20,1 45224: 12000005 stb r8,0(r2) 45228: 003f4606 br 44f44 <__alt_data_end+0xfffd2f44> 4522c: d9000b17 ldw r4,44(sp) 45230: 2000c826 beq r4,zero,45554 <_dtoa_r+0xcb8> 45234: d9800317 ldw r6,12(sp) 45238: 00c00044 movi r3,1 4523c: 1980f90e bge r3,r6,45624 <_dtoa_r+0xd88> 45240: d8800617 ldw r2,24(sp) 45244: d8c00a17 ldw r3,40(sp) 45248: 157fffc4 addi r21,r2,-1 4524c: 1d41f316 blt r3,r21,45a1c <_dtoa_r+0x1180> 45250: 1d6bc83a sub r21,r3,r21 45254: d9c00617 ldw r7,24(sp) 45258: 3802aa16 blt r7,zero,45d04 <_dtoa_r+0x1468> 4525c: dd000817 ldw r20,32(sp) 45260: d8800617 ldw r2,24(sp) 45264: d8c00817 ldw r3,32(sp) 45268: 01400044 movi r5,1 4526c: e009883a mov r4,fp 45270: 1887883a add r3,r3,r2 45274: d8c00815 stw r3,32(sp) 45278: b0ad883a add r22,r22,r2 4527c: 0047d640 call 47d64 <__i2b> 45280: 1023883a mov r17,r2 45284: a0000826 beq r20,zero,452a8 <_dtoa_r+0xa0c> 45288: 0580070e bge zero,r22,452a8 <_dtoa_r+0xa0c> 4528c: a005883a mov r2,r20 45290: b500b916 blt r22,r20,45578 <_dtoa_r+0xcdc> 45294: d9000817 ldw r4,32(sp) 45298: a0a9c83a sub r20,r20,r2 4529c: b0adc83a sub r22,r22,r2 452a0: 2089c83a sub r4,r4,r2 452a4: d9000815 stw r4,32(sp) 452a8: d9800a17 ldw r6,40(sp) 452ac: 0181810e bge zero,r6,458b4 <_dtoa_r+0x1018> 452b0: d9c00b17 ldw r7,44(sp) 452b4: 3800b326 beq r7,zero,45584 <_dtoa_r+0xce8> 452b8: a800b226 beq r21,zero,45584 <_dtoa_r+0xce8> 452bc: 880b883a mov r5,r17 452c0: a80d883a mov r6,r21 452c4: e009883a mov r4,fp 452c8: 004802c0 call 4802c <__pow5mult> 452cc: d9800917 ldw r6,36(sp) 452d0: 100b883a mov r5,r2 452d4: e009883a mov r4,fp 452d8: 1023883a mov r17,r2 452dc: 0047da00 call 47da0 <__multiply> 452e0: 1021883a mov r16,r2 452e4: d8800a17 ldw r2,40(sp) 452e8: d9400917 ldw r5,36(sp) 452ec: e009883a mov r4,fp 452f0: 1545c83a sub r2,r2,r21 452f4: d8800a15 stw r2,40(sp) 452f8: 00479d80 call 479d8 <_Bfree> 452fc: d8c00a17 ldw r3,40(sp) 45300: 18009f1e bne r3,zero,45580 <_dtoa_r+0xce4> 45304: 05c00044 movi r23,1 45308: e009883a mov r4,fp 4530c: b80b883a mov r5,r23 45310: 0047d640 call 47d64 <__i2b> 45314: d9000d17 ldw r4,52(sp) 45318: 102b883a mov r21,r2 4531c: 2000ce26 beq r4,zero,45658 <_dtoa_r+0xdbc> 45320: 200d883a mov r6,r4 45324: 100b883a mov r5,r2 45328: e009883a mov r4,fp 4532c: 004802c0 call 4802c <__pow5mult> 45330: d9800317 ldw r6,12(sp) 45334: 102b883a mov r21,r2 45338: b981810e bge r23,r6,45940 <_dtoa_r+0x10a4> 4533c: 0027883a mov r19,zero 45340: a8800417 ldw r2,16(r21) 45344: 05c00804 movi r23,32 45348: 10800104 addi r2,r2,4 4534c: 1085883a add r2,r2,r2 45350: 1085883a add r2,r2,r2 45354: a885883a add r2,r21,r2 45358: 11000017 ldw r4,0(r2) 4535c: 0047c4c0 call 47c4c <__hi0bits> 45360: b885c83a sub r2,r23,r2 45364: 1585883a add r2,r2,r22 45368: 108007cc andi r2,r2,31 4536c: 1000b326 beq r2,zero,4563c <_dtoa_r+0xda0> 45370: 00c00804 movi r3,32 45374: 1887c83a sub r3,r3,r2 45378: 01000104 movi r4,4 4537c: 20c2cd0e bge r4,r3,45eb4 <_dtoa_r+0x1618> 45380: 00c00704 movi r3,28 45384: 1885c83a sub r2,r3,r2 45388: d8c00817 ldw r3,32(sp) 4538c: a0a9883a add r20,r20,r2 45390: b0ad883a add r22,r22,r2 45394: 1887883a add r3,r3,r2 45398: d8c00815 stw r3,32(sp) 4539c: d9800817 ldw r6,32(sp) 453a0: 0180040e bge zero,r6,453b4 <_dtoa_r+0xb18> 453a4: 800b883a mov r5,r16 453a8: e009883a mov r4,fp 453ac: 004816c0 call 4816c <__lshift> 453b0: 1021883a mov r16,r2 453b4: 0580050e bge zero,r22,453cc <_dtoa_r+0xb30> 453b8: a80b883a mov r5,r21 453bc: b00d883a mov r6,r22 453c0: e009883a mov r4,fp 453c4: 004816c0 call 4816c <__lshift> 453c8: 102b883a mov r21,r2 453cc: d9c00e17 ldw r7,56(sp) 453d0: 3801211e bne r7,zero,45858 <_dtoa_r+0xfbc> 453d4: d9800617 ldw r6,24(sp) 453d8: 0181380e bge zero,r6,458bc <_dtoa_r+0x1020> 453dc: d8c00b17 ldw r3,44(sp) 453e0: 1800ab1e bne r3,zero,45690 <_dtoa_r+0xdf4> 453e4: dc800717 ldw r18,28(sp) 453e8: dcc00617 ldw r19,24(sp) 453ec: 9029883a mov r20,r18 453f0: 00000206 br 453fc <_dtoa_r+0xb60> 453f4: 0047a000 call 47a00 <__multadd> 453f8: 1021883a mov r16,r2 453fc: a80b883a mov r5,r21 45400: 8009883a mov r4,r16 45404: 00446740 call 44674 45408: 10800c04 addi r2,r2,48 4540c: 90800005 stb r2,0(r18) 45410: 94800044 addi r18,r18,1 45414: 9507c83a sub r3,r18,r20 45418: 000f883a mov r7,zero 4541c: 01800284 movi r6,10 45420: 800b883a mov r5,r16 45424: e009883a mov r4,fp 45428: 1cfff216 blt r3,r19,453f4 <__alt_data_end+0xfffd33f4> 4542c: 1011883a mov r8,r2 45430: d8800617 ldw r2,24(sp) 45434: 0082370e bge zero,r2,45d14 <_dtoa_r+0x1478> 45438: d9000717 ldw r4,28(sp) 4543c: 0025883a mov r18,zero 45440: 20af883a add r23,r4,r2 45444: 01800044 movi r6,1 45448: 800b883a mov r5,r16 4544c: e009883a mov r4,fp 45450: da001715 stw r8,92(sp) 45454: 004816c0 call 4816c <__lshift> 45458: a80b883a mov r5,r21 4545c: 1009883a mov r4,r2 45460: d8800915 stw r2,36(sp) 45464: 00482b40 call 482b4 <__mcmp> 45468: da001717 ldw r8,92(sp) 4546c: 0081800e bge zero,r2,45a70 <_dtoa_r+0x11d4> 45470: b93fffc3 ldbu r4,-1(r23) 45474: b8bfffc4 addi r2,r23,-1 45478: 1007883a mov r3,r2 4547c: 01800e44 movi r6,57 45480: d9c00717 ldw r7,28(sp) 45484: 00000506 br 4549c <_dtoa_r+0xc00> 45488: 18ffffc4 addi r3,r3,-1 4548c: 11c12326 beq r2,r7,4591c <_dtoa_r+0x1080> 45490: 19000003 ldbu r4,0(r3) 45494: 102f883a mov r23,r2 45498: 10bfffc4 addi r2,r2,-1 4549c: 21403fcc andi r5,r4,255 454a0: 2940201c xori r5,r5,128 454a4: 297fe004 addi r5,r5,-128 454a8: 29bff726 beq r5,r6,45488 <__alt_data_end+0xfffd3488> 454ac: 21000044 addi r4,r4,1 454b0: 11000005 stb r4,0(r2) 454b4: a80b883a mov r5,r21 454b8: e009883a mov r4,fp 454bc: 00479d80 call 479d8 <_Bfree> 454c0: 883ea026 beq r17,zero,44f44 <__alt_data_end+0xfffd2f44> 454c4: 90000426 beq r18,zero,454d8 <_dtoa_r+0xc3c> 454c8: 94400326 beq r18,r17,454d8 <_dtoa_r+0xc3c> 454cc: 900b883a mov r5,r18 454d0: e009883a mov r4,fp 454d4: 00479d80 call 479d8 <_Bfree> 454d8: 880b883a mov r5,r17 454dc: e009883a mov r4,fp 454e0: 00479d80 call 479d8 <_Bfree> 454e4: 003e9706 br 44f44 <__alt_data_end+0xfffd2f44> 454e8: 01800044 movi r6,1 454ec: d9800e15 stw r6,56(sp) 454f0: 003d9606 br 44b4c <__alt_data_end+0xfffd2b4c> 454f4: d8800817 ldw r2,32(sp) 454f8: d8c00517 ldw r3,20(sp) 454fc: d8000d15 stw zero,52(sp) 45500: 10c5c83a sub r2,r2,r3 45504: 00c9c83a sub r4,zero,r3 45508: d8800815 stw r2,32(sp) 4550c: d9000a15 stw r4,40(sp) 45510: 003d9706 br 44b70 <__alt_data_end+0xfffd2b70> 45514: 05adc83a sub r22,zero,r22 45518: dd800815 stw r22,32(sp) 4551c: 002d883a mov r22,zero 45520: 003d8e06 br 44b5c <__alt_data_end+0xfffd2b5c> 45524: d9000517 ldw r4,20(sp) 45528: 0041d100 call 41d10 <__floatsidf> 4552c: 100d883a mov r6,r2 45530: 180f883a mov r7,r3 45534: a009883a mov r4,r20 45538: 880b883a mov r5,r17 4553c: 004d3f00 call 4d3f0 <__eqdf2> 45540: 103d7126 beq r2,zero,44b08 <__alt_data_end+0xfffd2b08> 45544: d9c00517 ldw r7,20(sp) 45548: 39ffffc4 addi r7,r7,-1 4554c: d9c00515 stw r7,20(sp) 45550: 003d6d06 br 44b08 <__alt_data_end+0xfffd2b08> 45554: dd400a17 ldw r21,40(sp) 45558: dd000817 ldw r20,32(sp) 4555c: 0023883a mov r17,zero 45560: 003f4806 br 45284 <__alt_data_end+0xfffd3284> 45564: 10e3c83a sub r17,r2,r3 45568: 9448983a sll r4,r18,r17 4556c: 003d3206 br 44a38 <__alt_data_end+0xfffd2a38> 45570: d8000e15 stw zero,56(sp) 45574: 003d7506 br 44b4c <__alt_data_end+0xfffd2b4c> 45578: b005883a mov r2,r22 4557c: 003f4506 br 45294 <__alt_data_end+0xfffd3294> 45580: dc000915 stw r16,36(sp) 45584: d9800a17 ldw r6,40(sp) 45588: d9400917 ldw r5,36(sp) 4558c: e009883a mov r4,fp 45590: 004802c0 call 4802c <__pow5mult> 45594: 1021883a mov r16,r2 45598: 003f5a06 br 45304 <__alt_data_end+0xfffd3304> 4559c: 01c00044 movi r7,1 455a0: d9c00b15 stw r7,44(sp) 455a4: d8802217 ldw r2,136(sp) 455a8: 0081280e bge zero,r2,45a4c <_dtoa_r+0x11b0> 455ac: 100d883a mov r6,r2 455b0: 1021883a mov r16,r2 455b4: d8800c15 stw r2,48(sp) 455b8: d8800615 stw r2,24(sp) 455bc: 003d8806 br 44be0 <__alt_data_end+0xfffd2be0> 455c0: d8800617 ldw r2,24(sp) 455c4: 00be9b16 blt zero,r2,45034 <__alt_data_end+0xfffd3034> 455c8: 10010f1e bne r2,zero,45a08 <_dtoa_r+0x116c> 455cc: 880b883a mov r5,r17 455d0: 000d883a mov r6,zero 455d4: 01d00534 movhi r7,16404 455d8: 8009883a mov r4,r16 455dc: 004d6480 call 4d648 <__muldf3> 455e0: 900d883a mov r6,r18 455e4: 980f883a mov r7,r19 455e8: 1009883a mov r4,r2 455ec: 180b883a mov r5,r3 455f0: 004d4780 call 4d478 <__gedf2> 455f4: 002b883a mov r21,zero 455f8: 0023883a mov r17,zero 455fc: 1000bf16 blt r2,zero,458fc <_dtoa_r+0x1060> 45600: d9802217 ldw r6,136(sp) 45604: ddc00717 ldw r23,28(sp) 45608: 018c303a nor r6,zero,r6 4560c: d9800515 stw r6,20(sp) 45610: a80b883a mov r5,r21 45614: e009883a mov r4,fp 45618: 00479d80 call 479d8 <_Bfree> 4561c: 883e4926 beq r17,zero,44f44 <__alt_data_end+0xfffd2f44> 45620: 003fad06 br 454d8 <__alt_data_end+0xfffd34d8> 45624: d9c01117 ldw r7,68(sp) 45628: 3801bc26 beq r7,zero,45d1c <_dtoa_r+0x1480> 4562c: 10810cc4 addi r2,r2,1075 45630: dd400a17 ldw r21,40(sp) 45634: dd000817 ldw r20,32(sp) 45638: 003f0a06 br 45264 <__alt_data_end+0xfffd3264> 4563c: 00800704 movi r2,28 45640: d9000817 ldw r4,32(sp) 45644: a0a9883a add r20,r20,r2 45648: b0ad883a add r22,r22,r2 4564c: 2089883a add r4,r4,r2 45650: d9000815 stw r4,32(sp) 45654: 003f5106 br 4539c <__alt_data_end+0xfffd339c> 45658: d8c00317 ldw r3,12(sp) 4565c: b8c1fc0e bge r23,r3,45e50 <_dtoa_r+0x15b4> 45660: 0027883a mov r19,zero 45664: b805883a mov r2,r23 45668: 003f3e06 br 45364 <__alt_data_end+0xfffd3364> 4566c: 880b883a mov r5,r17 45670: e009883a mov r4,fp 45674: 000f883a mov r7,zero 45678: 01800284 movi r6,10 4567c: 0047a000 call 47a00 <__multadd> 45680: d9000c17 ldw r4,48(sp) 45684: 1023883a mov r17,r2 45688: 0102040e bge zero,r4,45e9c <_dtoa_r+0x1600> 4568c: d9000615 stw r4,24(sp) 45690: 0500050e bge zero,r20,456a8 <_dtoa_r+0xe0c> 45694: 880b883a mov r5,r17 45698: a00d883a mov r6,r20 4569c: e009883a mov r4,fp 456a0: 004816c0 call 4816c <__lshift> 456a4: 1023883a mov r17,r2 456a8: 9801241e bne r19,zero,45b3c <_dtoa_r+0x12a0> 456ac: 8829883a mov r20,r17 456b0: d9000617 ldw r4,24(sp) 456b4: dcc00717 ldw r19,28(sp) 456b8: 9480004c andi r18,r18,1 456bc: 20bfffc4 addi r2,r4,-1 456c0: 9885883a add r2,r19,r2 456c4: d8800415 stw r2,16(sp) 456c8: dc800615 stw r18,24(sp) 456cc: a80b883a mov r5,r21 456d0: 8009883a mov r4,r16 456d4: 00446740 call 44674 456d8: 880b883a mov r5,r17 456dc: 8009883a mov r4,r16 456e0: 102f883a mov r23,r2 456e4: 00482b40 call 482b4 <__mcmp> 456e8: a80b883a mov r5,r21 456ec: a00d883a mov r6,r20 456f0: e009883a mov r4,fp 456f4: 102d883a mov r22,r2 456f8: 00483140 call 48314 <__mdiff> 456fc: 1007883a mov r3,r2 45700: 10800317 ldw r2,12(r2) 45704: bc800c04 addi r18,r23,48 45708: 180b883a mov r5,r3 4570c: 10004e1e bne r2,zero,45848 <_dtoa_r+0xfac> 45710: 8009883a mov r4,r16 45714: d8c01615 stw r3,88(sp) 45718: 00482b40 call 482b4 <__mcmp> 4571c: d8c01617 ldw r3,88(sp) 45720: e009883a mov r4,fp 45724: d8801615 stw r2,88(sp) 45728: 180b883a mov r5,r3 4572c: 00479d80 call 479d8 <_Bfree> 45730: d8801617 ldw r2,88(sp) 45734: 1000041e bne r2,zero,45748 <_dtoa_r+0xeac> 45738: d9800317 ldw r6,12(sp) 4573c: 3000021e bne r6,zero,45748 <_dtoa_r+0xeac> 45740: d8c00617 ldw r3,24(sp) 45744: 18003726 beq r3,zero,45824 <_dtoa_r+0xf88> 45748: b0002016 blt r22,zero,457cc <_dtoa_r+0xf30> 4574c: b000041e bne r22,zero,45760 <_dtoa_r+0xec4> 45750: d9000317 ldw r4,12(sp) 45754: 2000021e bne r4,zero,45760 <_dtoa_r+0xec4> 45758: d8c00617 ldw r3,24(sp) 4575c: 18001b26 beq r3,zero,457cc <_dtoa_r+0xf30> 45760: 00810716 blt zero,r2,45b80 <_dtoa_r+0x12e4> 45764: d8c00417 ldw r3,16(sp) 45768: 9d800044 addi r22,r19,1 4576c: 9c800005 stb r18,0(r19) 45770: b02f883a mov r23,r22 45774: 98c10626 beq r19,r3,45b90 <_dtoa_r+0x12f4> 45778: 800b883a mov r5,r16 4577c: 000f883a mov r7,zero 45780: 01800284 movi r6,10 45784: e009883a mov r4,fp 45788: 0047a000 call 47a00 <__multadd> 4578c: 1021883a mov r16,r2 45790: 000f883a mov r7,zero 45794: 01800284 movi r6,10 45798: 880b883a mov r5,r17 4579c: e009883a mov r4,fp 457a0: 8d002526 beq r17,r20,45838 <_dtoa_r+0xf9c> 457a4: 0047a000 call 47a00 <__multadd> 457a8: a00b883a mov r5,r20 457ac: 000f883a mov r7,zero 457b0: 01800284 movi r6,10 457b4: e009883a mov r4,fp 457b8: 1023883a mov r17,r2 457bc: 0047a000 call 47a00 <__multadd> 457c0: 1029883a mov r20,r2 457c4: b027883a mov r19,r22 457c8: 003fc006 br 456cc <__alt_data_end+0xfffd36cc> 457cc: 9011883a mov r8,r18 457d0: 00800e0e bge zero,r2,4580c <_dtoa_r+0xf70> 457d4: 800b883a mov r5,r16 457d8: 01800044 movi r6,1 457dc: e009883a mov r4,fp 457e0: da001715 stw r8,92(sp) 457e4: 004816c0 call 4816c <__lshift> 457e8: a80b883a mov r5,r21 457ec: 1009883a mov r4,r2 457f0: 1021883a mov r16,r2 457f4: 00482b40 call 482b4 <__mcmp> 457f8: da001717 ldw r8,92(sp) 457fc: 0081960e bge zero,r2,45e58 <_dtoa_r+0x15bc> 45800: 00800e44 movi r2,57 45804: 40817026 beq r8,r2,45dc8 <_dtoa_r+0x152c> 45808: ba000c44 addi r8,r23,49 4580c: 8825883a mov r18,r17 45810: 9dc00044 addi r23,r19,1 45814: 9a000005 stb r8,0(r19) 45818: a023883a mov r17,r20 4581c: dc000915 stw r16,36(sp) 45820: 003f2406 br 454b4 <__alt_data_end+0xfffd34b4> 45824: 00800e44 movi r2,57 45828: 9011883a mov r8,r18 4582c: 90816626 beq r18,r2,45dc8 <_dtoa_r+0x152c> 45830: 05bff516 blt zero,r22,45808 <__alt_data_end+0xfffd3808> 45834: 003ff506 br 4580c <__alt_data_end+0xfffd380c> 45838: 0047a000 call 47a00 <__multadd> 4583c: 1023883a mov r17,r2 45840: 1029883a mov r20,r2 45844: 003fdf06 br 457c4 <__alt_data_end+0xfffd37c4> 45848: e009883a mov r4,fp 4584c: 00479d80 call 479d8 <_Bfree> 45850: 00800044 movi r2,1 45854: 003fbc06 br 45748 <__alt_data_end+0xfffd3748> 45858: a80b883a mov r5,r21 4585c: 8009883a mov r4,r16 45860: 00482b40 call 482b4 <__mcmp> 45864: 103edb0e bge r2,zero,453d4 <__alt_data_end+0xfffd33d4> 45868: 800b883a mov r5,r16 4586c: 000f883a mov r7,zero 45870: 01800284 movi r6,10 45874: e009883a mov r4,fp 45878: 0047a000 call 47a00 <__multadd> 4587c: 1021883a mov r16,r2 45880: d8800517 ldw r2,20(sp) 45884: d8c00b17 ldw r3,44(sp) 45888: 10bfffc4 addi r2,r2,-1 4588c: d8800515 stw r2,20(sp) 45890: 183f761e bne r3,zero,4566c <__alt_data_end+0xfffd366c> 45894: d9000c17 ldw r4,48(sp) 45898: 0101730e bge zero,r4,45e68 <_dtoa_r+0x15cc> 4589c: d9000615 stw r4,24(sp) 458a0: 003ed006 br 453e4 <__alt_data_end+0xfffd33e4> 458a4: 00800084 movi r2,2 458a8: 3081861e bne r6,r2,45ec4 <_dtoa_r+0x1628> 458ac: d8000b15 stw zero,44(sp) 458b0: 003f3c06 br 455a4 <__alt_data_end+0xfffd35a4> 458b4: dc000917 ldw r16,36(sp) 458b8: 003e9206 br 45304 <__alt_data_end+0xfffd3304> 458bc: d9c00317 ldw r7,12(sp) 458c0: 00800084 movi r2,2 458c4: 11fec50e bge r2,r7,453dc <__alt_data_end+0xfffd33dc> 458c8: d9000617 ldw r4,24(sp) 458cc: 20013c1e bne r4,zero,45dc0 <_dtoa_r+0x1524> 458d0: a80b883a mov r5,r21 458d4: 000f883a mov r7,zero 458d8: 01800144 movi r6,5 458dc: e009883a mov r4,fp 458e0: 0047a000 call 47a00 <__multadd> 458e4: 100b883a mov r5,r2 458e8: 8009883a mov r4,r16 458ec: 102b883a mov r21,r2 458f0: 00482b40 call 482b4 <__mcmp> 458f4: dc000915 stw r16,36(sp) 458f8: 00bf410e bge zero,r2,45600 <__alt_data_end+0xfffd3600> 458fc: d9c00717 ldw r7,28(sp) 45900: 00800c44 movi r2,49 45904: 38800005 stb r2,0(r7) 45908: d8800517 ldw r2,20(sp) 4590c: 3dc00044 addi r23,r7,1 45910: 10800044 addi r2,r2,1 45914: d8800515 stw r2,20(sp) 45918: 003f3d06 br 45610 <__alt_data_end+0xfffd3610> 4591c: d9800517 ldw r6,20(sp) 45920: d9c00717 ldw r7,28(sp) 45924: 00800c44 movi r2,49 45928: 31800044 addi r6,r6,1 4592c: d9800515 stw r6,20(sp) 45930: 38800005 stb r2,0(r7) 45934: 003edf06 br 454b4 <__alt_data_end+0xfffd34b4> 45938: d8000b15 stw zero,44(sp) 4593c: 003c9f06 br 44bbc <__alt_data_end+0xfffd2bbc> 45940: 903e7e1e bne r18,zero,4533c <__alt_data_end+0xfffd333c> 45944: 00800434 movhi r2,16 45948: 10bfffc4 addi r2,r2,-1 4594c: 9884703a and r2,r19,r2 45950: 1000ea1e bne r2,zero,45cfc <_dtoa_r+0x1460> 45954: 9cdffc2c andhi r19,r19,32752 45958: 9800e826 beq r19,zero,45cfc <_dtoa_r+0x1460> 4595c: d9c00817 ldw r7,32(sp) 45960: b5800044 addi r22,r22,1 45964: 04c00044 movi r19,1 45968: 39c00044 addi r7,r7,1 4596c: d9c00815 stw r7,32(sp) 45970: d8800d17 ldw r2,52(sp) 45974: 103e721e bne r2,zero,45340 <__alt_data_end+0xfffd3340> 45978: 00800044 movi r2,1 4597c: 003e7906 br 45364 <__alt_data_end+0xfffd3364> 45980: 8009883a mov r4,r16 45984: 0041d100 call 41d10 <__floatsidf> 45988: d9800f17 ldw r6,60(sp) 4598c: d9c01017 ldw r7,64(sp) 45990: 1009883a mov r4,r2 45994: 180b883a mov r5,r3 45998: 004d6480 call 4d648 <__muldf3> 4599c: 000d883a mov r6,zero 459a0: 01d00734 movhi r7,16412 459a4: 1009883a mov r4,r2 459a8: 180b883a mov r5,r3 459ac: 00413e40 call 413e4 <__adddf3> 459b0: 047f3034 movhi r17,64704 459b4: 1021883a mov r16,r2 459b8: 1c63883a add r17,r3,r17 459bc: d9000f17 ldw r4,60(sp) 459c0: d9401017 ldw r5,64(sp) 459c4: 000d883a mov r6,zero 459c8: 01d00534 movhi r7,16404 459cc: 004deb40 call 4deb4 <__subdf3> 459d0: 800d883a mov r6,r16 459d4: 880f883a mov r7,r17 459d8: 1009883a mov r4,r2 459dc: 180b883a mov r5,r3 459e0: 102b883a mov r21,r2 459e4: 1829883a mov r20,r3 459e8: 004d4780 call 4d478 <__gedf2> 459ec: 00806c16 blt zero,r2,45ba0 <_dtoa_r+0x1304> 459f0: 89e0003c xorhi r7,r17,32768 459f4: 800d883a mov r6,r16 459f8: a809883a mov r4,r21 459fc: a00b883a mov r5,r20 45a00: 004d5540 call 4d554 <__ledf2> 45a04: 103d7e0e bge r2,zero,45000 <__alt_data_end+0xfffd3000> 45a08: 002b883a mov r21,zero 45a0c: 0023883a mov r17,zero 45a10: 003efb06 br 45600 <__alt_data_end+0xfffd3600> 45a14: d8800717 ldw r2,28(sp) 45a18: 003bd006 br 4495c <__alt_data_end+0xfffd295c> 45a1c: d9000a17 ldw r4,40(sp) 45a20: d9800d17 ldw r6,52(sp) 45a24: dd400a15 stw r21,40(sp) 45a28: a905c83a sub r2,r21,r4 45a2c: 308d883a add r6,r6,r2 45a30: d9800d15 stw r6,52(sp) 45a34: 002b883a mov r21,zero 45a38: 003e0606 br 45254 <__alt_data_end+0xfffd3254> 45a3c: 9023883a mov r17,r18 45a40: 9829883a mov r20,r19 45a44: 04000084 movi r16,2 45a48: 003c9206 br 44c94 <__alt_data_end+0xfffd2c94> 45a4c: 04000044 movi r16,1 45a50: dc000c15 stw r16,48(sp) 45a54: dc000615 stw r16,24(sp) 45a58: dc002215 stw r16,136(sp) 45a5c: e0001115 stw zero,68(fp) 45a60: 000b883a mov r5,zero 45a64: 003c6906 br 44c0c <__alt_data_end+0xfffd2c0c> 45a68: 3021883a mov r16,r6 45a6c: 003ffb06 br 45a5c <__alt_data_end+0xfffd3a5c> 45a70: 1000021e bne r2,zero,45a7c <_dtoa_r+0x11e0> 45a74: 4200004c andi r8,r8,1 45a78: 403e7d1e bne r8,zero,45470 <__alt_data_end+0xfffd3470> 45a7c: 01000c04 movi r4,48 45a80: 00000106 br 45a88 <_dtoa_r+0x11ec> 45a84: 102f883a mov r23,r2 45a88: b8bfffc4 addi r2,r23,-1 45a8c: 10c00007 ldb r3,0(r2) 45a90: 193ffc26 beq r3,r4,45a84 <__alt_data_end+0xfffd3a84> 45a94: 003e8706 br 454b4 <__alt_data_end+0xfffd34b4> 45a98: d8800517 ldw r2,20(sp) 45a9c: 00a3c83a sub r17,zero,r2 45aa0: 8800a426 beq r17,zero,45d34 <_dtoa_r+0x1498> 45aa4: 888003cc andi r2,r17,15 45aa8: 100490fa slli r2,r2,3 45aac: 00c00174 movhi r3,5 45ab0: 18c8ae04 addi r3,r3,8888 45ab4: 1885883a add r2,r3,r2 45ab8: 11800017 ldw r6,0(r2) 45abc: 11c00117 ldw r7,4(r2) 45ac0: 9009883a mov r4,r18 45ac4: 980b883a mov r5,r19 45ac8: 8823d13a srai r17,r17,4 45acc: 004d6480 call 4d648 <__muldf3> 45ad0: d8800f15 stw r2,60(sp) 45ad4: d8c01015 stw r3,64(sp) 45ad8: 8800e826 beq r17,zero,45e7c <_dtoa_r+0x15e0> 45adc: 05000174 movhi r20,5 45ae0: a508a404 addi r20,r20,8848 45ae4: 04000084 movi r16,2 45ae8: 8980004c andi r6,r17,1 45aec: 1009883a mov r4,r2 45af0: 8823d07a srai r17,r17,1 45af4: 180b883a mov r5,r3 45af8: 30000426 beq r6,zero,45b0c <_dtoa_r+0x1270> 45afc: a1800017 ldw r6,0(r20) 45b00: a1c00117 ldw r7,4(r20) 45b04: 84000044 addi r16,r16,1 45b08: 004d6480 call 4d648 <__muldf3> 45b0c: a5000204 addi r20,r20,8 45b10: 883ff51e bne r17,zero,45ae8 <__alt_data_end+0xfffd3ae8> 45b14: d8800f15 stw r2,60(sp) 45b18: d8c01015 stw r3,64(sp) 45b1c: 003c7606 br 44cf8 <__alt_data_end+0xfffd2cf8> 45b20: 00c00c04 movi r3,48 45b24: 10c00005 stb r3,0(r2) 45b28: d8c00517 ldw r3,20(sp) 45b2c: bd3fffc3 ldbu r20,-1(r23) 45b30: 18c00044 addi r3,r3,1 45b34: d8c00515 stw r3,20(sp) 45b38: 003db906 br 45220 <__alt_data_end+0xfffd3220> 45b3c: 89400117 ldw r5,4(r17) 45b40: e009883a mov r4,fp 45b44: 00479300 call 47930 <_Balloc> 45b48: 89800417 ldw r6,16(r17) 45b4c: 89400304 addi r5,r17,12 45b50: 11000304 addi r4,r2,12 45b54: 31800084 addi r6,r6,2 45b58: 318d883a add r6,r6,r6 45b5c: 318d883a add r6,r6,r6 45b60: 1027883a mov r19,r2 45b64: 00476c00 call 476c0 45b68: 01800044 movi r6,1 45b6c: 980b883a mov r5,r19 45b70: e009883a mov r4,fp 45b74: 004816c0 call 4816c <__lshift> 45b78: 1029883a mov r20,r2 45b7c: 003ecc06 br 456b0 <__alt_data_end+0xfffd36b0> 45b80: 00800e44 movi r2,57 45b84: 90809026 beq r18,r2,45dc8 <_dtoa_r+0x152c> 45b88: 92000044 addi r8,r18,1 45b8c: 003f1f06 br 4580c <__alt_data_end+0xfffd380c> 45b90: 9011883a mov r8,r18 45b94: 8825883a mov r18,r17 45b98: a023883a mov r17,r20 45b9c: 003e2906 br 45444 <__alt_data_end+0xfffd3444> 45ba0: 002b883a mov r21,zero 45ba4: 0023883a mov r17,zero 45ba8: 003f5406 br 458fc <__alt_data_end+0xfffd38fc> 45bac: 61bfffc4 addi r6,r12,-1 45bb0: 300490fa slli r2,r6,3 45bb4: 00c00174 movhi r3,5 45bb8: 18c8ae04 addi r3,r3,8888 45bbc: 1885883a add r2,r3,r2 45bc0: 11000017 ldw r4,0(r2) 45bc4: 11400117 ldw r5,4(r2) 45bc8: d8800717 ldw r2,28(sp) 45bcc: 880f883a mov r7,r17 45bd0: d9801215 stw r6,72(sp) 45bd4: 800d883a mov r6,r16 45bd8: db001615 stw r12,88(sp) 45bdc: 15c00044 addi r23,r2,1 45be0: 004d6480 call 4d648 <__muldf3> 45be4: d9401017 ldw r5,64(sp) 45be8: d9000f17 ldw r4,60(sp) 45bec: d8c01515 stw r3,84(sp) 45bf0: d8801415 stw r2,80(sp) 45bf4: 0041c900 call 41c90 <__fixdfsi> 45bf8: 1009883a mov r4,r2 45bfc: 1021883a mov r16,r2 45c00: 0041d100 call 41d10 <__floatsidf> 45c04: d9000f17 ldw r4,60(sp) 45c08: d9401017 ldw r5,64(sp) 45c0c: 100d883a mov r6,r2 45c10: 180f883a mov r7,r3 45c14: 004deb40 call 4deb4 <__subdf3> 45c18: 1829883a mov r20,r3 45c1c: d8c00717 ldw r3,28(sp) 45c20: 84000c04 addi r16,r16,48 45c24: 1023883a mov r17,r2 45c28: 1c000005 stb r16,0(r3) 45c2c: db001617 ldw r12,88(sp) 45c30: 00800044 movi r2,1 45c34: 60802226 beq r12,r2,45cc0 <_dtoa_r+0x1424> 45c38: d9c00717 ldw r7,28(sp) 45c3c: 8805883a mov r2,r17 45c40: b82b883a mov r21,r23 45c44: 3b19883a add r12,r7,r12 45c48: 6023883a mov r17,r12 45c4c: a007883a mov r3,r20 45c50: dc800f15 stw r18,60(sp) 45c54: 000d883a mov r6,zero 45c58: 01d00934 movhi r7,16420 45c5c: 1009883a mov r4,r2 45c60: 180b883a mov r5,r3 45c64: 004d6480 call 4d648 <__muldf3> 45c68: 180b883a mov r5,r3 45c6c: 1009883a mov r4,r2 45c70: 1829883a mov r20,r3 45c74: 1025883a mov r18,r2 45c78: 0041c900 call 41c90 <__fixdfsi> 45c7c: 1009883a mov r4,r2 45c80: 1021883a mov r16,r2 45c84: 0041d100 call 41d10 <__floatsidf> 45c88: 100d883a mov r6,r2 45c8c: 180f883a mov r7,r3 45c90: 9009883a mov r4,r18 45c94: a00b883a mov r5,r20 45c98: 84000c04 addi r16,r16,48 45c9c: 004deb40 call 4deb4 <__subdf3> 45ca0: ad400044 addi r21,r21,1 45ca4: ac3fffc5 stb r16,-1(r21) 45ca8: ac7fea1e bne r21,r17,45c54 <__alt_data_end+0xfffd3c54> 45cac: 1023883a mov r17,r2 45cb0: d8801217 ldw r2,72(sp) 45cb4: dc800f17 ldw r18,60(sp) 45cb8: 1829883a mov r20,r3 45cbc: b8af883a add r23,r23,r2 45cc0: d9001417 ldw r4,80(sp) 45cc4: d9401517 ldw r5,84(sp) 45cc8: 000d883a mov r6,zero 45ccc: 01cff834 movhi r7,16352 45cd0: 00413e40 call 413e4 <__adddf3> 45cd4: 880d883a mov r6,r17 45cd8: a00f883a mov r7,r20 45cdc: 1009883a mov r4,r2 45ce0: 180b883a mov r5,r3 45ce4: 004d5540 call 4d554 <__ledf2> 45ce8: 10003e0e bge r2,zero,45de4 <_dtoa_r+0x1548> 45cec: d9001317 ldw r4,76(sp) 45cf0: bd3fffc3 ldbu r20,-1(r23) 45cf4: d9000515 stw r4,20(sp) 45cf8: 003d3b06 br 451e8 <__alt_data_end+0xfffd31e8> 45cfc: 0027883a mov r19,zero 45d00: 003f1b06 br 45970 <__alt_data_end+0xfffd3970> 45d04: d8800817 ldw r2,32(sp) 45d08: 11e9c83a sub r20,r2,r7 45d0c: 0005883a mov r2,zero 45d10: 003d5406 br 45264 <__alt_data_end+0xfffd3264> 45d14: 00800044 movi r2,1 45d18: 003dc706 br 45438 <__alt_data_end+0xfffd3438> 45d1c: d8c00217 ldw r3,8(sp) 45d20: 00800d84 movi r2,54 45d24: dd400a17 ldw r21,40(sp) 45d28: 10c5c83a sub r2,r2,r3 45d2c: dd000817 ldw r20,32(sp) 45d30: 003d4c06 br 45264 <__alt_data_end+0xfffd3264> 45d34: dc800f15 stw r18,60(sp) 45d38: dcc01015 stw r19,64(sp) 45d3c: 04000084 movi r16,2 45d40: 003bed06 br 44cf8 <__alt_data_end+0xfffd2cf8> 45d44: d9000617 ldw r4,24(sp) 45d48: 203f0d26 beq r4,zero,45980 <__alt_data_end+0xfffd3980> 45d4c: d9800c17 ldw r6,48(sp) 45d50: 01bcab0e bge zero,r6,45000 <__alt_data_end+0xfffd3000> 45d54: d9401017 ldw r5,64(sp) 45d58: d9000f17 ldw r4,60(sp) 45d5c: 000d883a mov r6,zero 45d60: 01d00934 movhi r7,16420 45d64: 004d6480 call 4d648 <__muldf3> 45d68: 81000044 addi r4,r16,1 45d6c: d8800f15 stw r2,60(sp) 45d70: d8c01015 stw r3,64(sp) 45d74: 0041d100 call 41d10 <__floatsidf> 45d78: d9800f17 ldw r6,60(sp) 45d7c: d9c01017 ldw r7,64(sp) 45d80: 1009883a mov r4,r2 45d84: 180b883a mov r5,r3 45d88: 004d6480 call 4d648 <__muldf3> 45d8c: 01d00734 movhi r7,16412 45d90: 000d883a mov r6,zero 45d94: 1009883a mov r4,r2 45d98: 180b883a mov r5,r3 45d9c: 00413e40 call 413e4 <__adddf3> 45da0: d9c00517 ldw r7,20(sp) 45da4: 047f3034 movhi r17,64704 45da8: 1021883a mov r16,r2 45dac: 39ffffc4 addi r7,r7,-1 45db0: d9c01315 stw r7,76(sp) 45db4: 1c63883a add r17,r3,r17 45db8: db000c17 ldw r12,48(sp) 45dbc: 003bea06 br 44d68 <__alt_data_end+0xfffd2d68> 45dc0: dc000915 stw r16,36(sp) 45dc4: 003e0e06 br 45600 <__alt_data_end+0xfffd3600> 45dc8: 01000e44 movi r4,57 45dcc: 8825883a mov r18,r17 45dd0: 9dc00044 addi r23,r19,1 45dd4: 99000005 stb r4,0(r19) 45dd8: a023883a mov r17,r20 45ddc: dc000915 stw r16,36(sp) 45de0: 003da406 br 45474 <__alt_data_end+0xfffd3474> 45de4: d9801417 ldw r6,80(sp) 45de8: d9c01517 ldw r7,84(sp) 45dec: 0009883a mov r4,zero 45df0: 014ff834 movhi r5,16352 45df4: 004deb40 call 4deb4 <__subdf3> 45df8: 880d883a mov r6,r17 45dfc: a00f883a mov r7,r20 45e00: 1009883a mov r4,r2 45e04: 180b883a mov r5,r3 45e08: 004d4780 call 4d478 <__gedf2> 45e0c: 00bc7c0e bge zero,r2,45000 <__alt_data_end+0xfffd3000> 45e10: 01000c04 movi r4,48 45e14: 00000106 br 45e1c <_dtoa_r+0x1580> 45e18: 102f883a mov r23,r2 45e1c: b8bfffc4 addi r2,r23,-1 45e20: 10c00007 ldb r3,0(r2) 45e24: 193ffc26 beq r3,r4,45e18 <__alt_data_end+0xfffd3e18> 45e28: d9801317 ldw r6,76(sp) 45e2c: d9800515 stw r6,20(sp) 45e30: 003c4406 br 44f44 <__alt_data_end+0xfffd2f44> 45e34: d9801317 ldw r6,76(sp) 45e38: d9800515 stw r6,20(sp) 45e3c: 003cea06 br 451e8 <__alt_data_end+0xfffd31e8> 45e40: dd800f17 ldw r22,60(sp) 45e44: dcc01017 ldw r19,64(sp) 45e48: dc801217 ldw r18,72(sp) 45e4c: 003c6c06 br 45000 <__alt_data_end+0xfffd3000> 45e50: 903e031e bne r18,zero,45660 <__alt_data_end+0xfffd3660> 45e54: 003ebb06 br 45944 <__alt_data_end+0xfffd3944> 45e58: 103e6c1e bne r2,zero,4580c <__alt_data_end+0xfffd380c> 45e5c: 4080004c andi r2,r8,1 45e60: 103e6a26 beq r2,zero,4580c <__alt_data_end+0xfffd380c> 45e64: 003e6606 br 45800 <__alt_data_end+0xfffd3800> 45e68: d8c00317 ldw r3,12(sp) 45e6c: 00800084 movi r2,2 45e70: 10c02916 blt r2,r3,45f18 <_dtoa_r+0x167c> 45e74: d9000c17 ldw r4,48(sp) 45e78: 003e8806 br 4589c <__alt_data_end+0xfffd389c> 45e7c: 04000084 movi r16,2 45e80: 003b9d06 br 44cf8 <__alt_data_end+0xfffd2cf8> 45e84: d9001317 ldw r4,76(sp) 45e88: d9000515 stw r4,20(sp) 45e8c: 003cd606 br 451e8 <__alt_data_end+0xfffd31e8> 45e90: d8801317 ldw r2,76(sp) 45e94: d8800515 stw r2,20(sp) 45e98: 003c2a06 br 44f44 <__alt_data_end+0xfffd2f44> 45e9c: d9800317 ldw r6,12(sp) 45ea0: 00800084 movi r2,2 45ea4: 11801516 blt r2,r6,45efc <_dtoa_r+0x1660> 45ea8: d9c00c17 ldw r7,48(sp) 45eac: d9c00615 stw r7,24(sp) 45eb0: 003df706 br 45690 <__alt_data_end+0xfffd3690> 45eb4: 193d3926 beq r3,r4,4539c <__alt_data_end+0xfffd339c> 45eb8: 00c00f04 movi r3,60 45ebc: 1885c83a sub r2,r3,r2 45ec0: 003ddf06 br 45640 <__alt_data_end+0xfffd3640> 45ec4: e009883a mov r4,fp 45ec8: e0001115 stw zero,68(fp) 45ecc: 000b883a mov r5,zero 45ed0: 00479300 call 47930 <_Balloc> 45ed4: d8800715 stw r2,28(sp) 45ed8: d8c00717 ldw r3,28(sp) 45edc: 00bfffc4 movi r2,-1 45ee0: 01000044 movi r4,1 45ee4: d8800c15 stw r2,48(sp) 45ee8: e0c01015 stw r3,64(fp) 45eec: d9000b15 stw r4,44(sp) 45ef0: d8800615 stw r2,24(sp) 45ef4: d8002215 stw zero,136(sp) 45ef8: 003c4106 br 45000 <__alt_data_end+0xfffd3000> 45efc: d8c00c17 ldw r3,48(sp) 45f00: d8c00615 stw r3,24(sp) 45f04: 003e7006 br 458c8 <__alt_data_end+0xfffd38c8> 45f08: 04400044 movi r17,1 45f0c: 003b2006 br 44b90 <__alt_data_end+0xfffd2b90> 45f10: 000b883a mov r5,zero 45f14: 003b3d06 br 44c0c <__alt_data_end+0xfffd2c0c> 45f18: d8800c17 ldw r2,48(sp) 45f1c: d8800615 stw r2,24(sp) 45f20: 003e6906 br 458c8 <__alt_data_end+0xfffd38c8> 00045f24 <__sflush_r>: 45f24: 2880030b ldhu r2,12(r5) 45f28: defffb04 addi sp,sp,-20 45f2c: dcc00315 stw r19,12(sp) 45f30: dc400115 stw r17,4(sp) 45f34: dfc00415 stw ra,16(sp) 45f38: dc800215 stw r18,8(sp) 45f3c: dc000015 stw r16,0(sp) 45f40: 10c0020c andi r3,r2,8 45f44: 2823883a mov r17,r5 45f48: 2027883a mov r19,r4 45f4c: 1800311e bne r3,zero,46014 <__sflush_r+0xf0> 45f50: 28c00117 ldw r3,4(r5) 45f54: 10820014 ori r2,r2,2048 45f58: 2880030d sth r2,12(r5) 45f5c: 00c04b0e bge zero,r3,4608c <__sflush_r+0x168> 45f60: 8a000a17 ldw r8,40(r17) 45f64: 40002326 beq r8,zero,45ff4 <__sflush_r+0xd0> 45f68: 9c000017 ldw r16,0(r19) 45f6c: 10c4000c andi r3,r2,4096 45f70: 98000015 stw zero,0(r19) 45f74: 18004826 beq r3,zero,46098 <__sflush_r+0x174> 45f78: 89801417 ldw r6,80(r17) 45f7c: 10c0010c andi r3,r2,4 45f80: 18000626 beq r3,zero,45f9c <__sflush_r+0x78> 45f84: 88c00117 ldw r3,4(r17) 45f88: 88800c17 ldw r2,48(r17) 45f8c: 30cdc83a sub r6,r6,r3 45f90: 10000226 beq r2,zero,45f9c <__sflush_r+0x78> 45f94: 88800f17 ldw r2,60(r17) 45f98: 308dc83a sub r6,r6,r2 45f9c: 89400717 ldw r5,28(r17) 45fa0: 000f883a mov r7,zero 45fa4: 9809883a mov r4,r19 45fa8: 403ee83a callr r8 45fac: 00ffffc4 movi r3,-1 45fb0: 10c04426 beq r2,r3,460c4 <__sflush_r+0x1a0> 45fb4: 88c0030b ldhu r3,12(r17) 45fb8: 89000417 ldw r4,16(r17) 45fbc: 88000115 stw zero,4(r17) 45fc0: 197dffcc andi r5,r3,63487 45fc4: 8940030d sth r5,12(r17) 45fc8: 89000015 stw r4,0(r17) 45fcc: 18c4000c andi r3,r3,4096 45fd0: 18002c1e bne r3,zero,46084 <__sflush_r+0x160> 45fd4: 89400c17 ldw r5,48(r17) 45fd8: 9c000015 stw r16,0(r19) 45fdc: 28000526 beq r5,zero,45ff4 <__sflush_r+0xd0> 45fe0: 88801004 addi r2,r17,64 45fe4: 28800226 beq r5,r2,45ff0 <__sflush_r+0xcc> 45fe8: 9809883a mov r4,r19 45fec: 00466a00 call 466a0 <_free_r> 45ff0: 88000c15 stw zero,48(r17) 45ff4: 0005883a mov r2,zero 45ff8: dfc00417 ldw ra,16(sp) 45ffc: dcc00317 ldw r19,12(sp) 46000: dc800217 ldw r18,8(sp) 46004: dc400117 ldw r17,4(sp) 46008: dc000017 ldw r16,0(sp) 4600c: dec00504 addi sp,sp,20 46010: f800283a ret 46014: 2c800417 ldw r18,16(r5) 46018: 903ff626 beq r18,zero,45ff4 <__alt_data_end+0xfffd3ff4> 4601c: 2c000017 ldw r16,0(r5) 46020: 108000cc andi r2,r2,3 46024: 2c800015 stw r18,0(r5) 46028: 84a1c83a sub r16,r16,r18 4602c: 1000131e bne r2,zero,4607c <__sflush_r+0x158> 46030: 28800517 ldw r2,20(r5) 46034: 88800215 stw r2,8(r17) 46038: 04000316 blt zero,r16,46048 <__sflush_r+0x124> 4603c: 003fed06 br 45ff4 <__alt_data_end+0xfffd3ff4> 46040: 90a5883a add r18,r18,r2 46044: 043feb0e bge zero,r16,45ff4 <__alt_data_end+0xfffd3ff4> 46048: 88800917 ldw r2,36(r17) 4604c: 89400717 ldw r5,28(r17) 46050: 800f883a mov r7,r16 46054: 900d883a mov r6,r18 46058: 9809883a mov r4,r19 4605c: 103ee83a callr r2 46060: 80a1c83a sub r16,r16,r2 46064: 00bff616 blt zero,r2,46040 <__alt_data_end+0xfffd4040> 46068: 88c0030b ldhu r3,12(r17) 4606c: 00bfffc4 movi r2,-1 46070: 18c01014 ori r3,r3,64 46074: 88c0030d sth r3,12(r17) 46078: 003fdf06 br 45ff8 <__alt_data_end+0xfffd3ff8> 4607c: 0005883a mov r2,zero 46080: 003fec06 br 46034 <__alt_data_end+0xfffd4034> 46084: 88801415 stw r2,80(r17) 46088: 003fd206 br 45fd4 <__alt_data_end+0xfffd3fd4> 4608c: 28c00f17 ldw r3,60(r5) 46090: 00ffb316 blt zero,r3,45f60 <__alt_data_end+0xfffd3f60> 46094: 003fd706 br 45ff4 <__alt_data_end+0xfffd3ff4> 46098: 89400717 ldw r5,28(r17) 4609c: 000d883a mov r6,zero 460a0: 01c00044 movi r7,1 460a4: 9809883a mov r4,r19 460a8: 403ee83a callr r8 460ac: 100d883a mov r6,r2 460b0: 00bfffc4 movi r2,-1 460b4: 30801426 beq r6,r2,46108 <__sflush_r+0x1e4> 460b8: 8880030b ldhu r2,12(r17) 460bc: 8a000a17 ldw r8,40(r17) 460c0: 003fae06 br 45f7c <__alt_data_end+0xfffd3f7c> 460c4: 98c00017 ldw r3,0(r19) 460c8: 183fba26 beq r3,zero,45fb4 <__alt_data_end+0xfffd3fb4> 460cc: 01000744 movi r4,29 460d0: 19000626 beq r3,r4,460ec <__sflush_r+0x1c8> 460d4: 01000584 movi r4,22 460d8: 19000426 beq r3,r4,460ec <__sflush_r+0x1c8> 460dc: 88c0030b ldhu r3,12(r17) 460e0: 18c01014 ori r3,r3,64 460e4: 88c0030d sth r3,12(r17) 460e8: 003fc306 br 45ff8 <__alt_data_end+0xfffd3ff8> 460ec: 8880030b ldhu r2,12(r17) 460f0: 88c00417 ldw r3,16(r17) 460f4: 88000115 stw zero,4(r17) 460f8: 10bdffcc andi r2,r2,63487 460fc: 8880030d sth r2,12(r17) 46100: 88c00015 stw r3,0(r17) 46104: 003fb306 br 45fd4 <__alt_data_end+0xfffd3fd4> 46108: 98800017 ldw r2,0(r19) 4610c: 103fea26 beq r2,zero,460b8 <__alt_data_end+0xfffd40b8> 46110: 00c00744 movi r3,29 46114: 10c00226 beq r2,r3,46120 <__sflush_r+0x1fc> 46118: 00c00584 movi r3,22 4611c: 10c0031e bne r2,r3,4612c <__sflush_r+0x208> 46120: 9c000015 stw r16,0(r19) 46124: 0005883a mov r2,zero 46128: 003fb306 br 45ff8 <__alt_data_end+0xfffd3ff8> 4612c: 88c0030b ldhu r3,12(r17) 46130: 3005883a mov r2,r6 46134: 18c01014 ori r3,r3,64 46138: 88c0030d sth r3,12(r17) 4613c: 003fae06 br 45ff8 <__alt_data_end+0xfffd3ff8> 00046140 <_fflush_r>: 46140: defffd04 addi sp,sp,-12 46144: dc000115 stw r16,4(sp) 46148: dfc00215 stw ra,8(sp) 4614c: 2021883a mov r16,r4 46150: 20000226 beq r4,zero,4615c <_fflush_r+0x1c> 46154: 20800e17 ldw r2,56(r4) 46158: 10000c26 beq r2,zero,4618c <_fflush_r+0x4c> 4615c: 2880030f ldh r2,12(r5) 46160: 1000051e bne r2,zero,46178 <_fflush_r+0x38> 46164: 0005883a mov r2,zero 46168: dfc00217 ldw ra,8(sp) 4616c: dc000117 ldw r16,4(sp) 46170: dec00304 addi sp,sp,12 46174: f800283a ret 46178: 8009883a mov r4,r16 4617c: dfc00217 ldw ra,8(sp) 46180: dc000117 ldw r16,4(sp) 46184: dec00304 addi sp,sp,12 46188: 0045f241 jmpi 45f24 <__sflush_r> 4618c: d9400015 stw r5,0(sp) 46190: 004652c0 call 4652c <__sinit> 46194: d9400017 ldw r5,0(sp) 46198: 003ff006 br 4615c <__alt_data_end+0xfffd415c> 0004619c : 4619c: 20000526 beq r4,zero,461b4 461a0: 00800174 movhi r2,5 461a4: 10908b04 addi r2,r2,16940 461a8: 200b883a mov r5,r4 461ac: 11000017 ldw r4,0(r2) 461b0: 00461401 jmpi 46140 <_fflush_r> 461b4: 00800174 movhi r2,5 461b8: 10908a04 addi r2,r2,16936 461bc: 11000017 ldw r4,0(r2) 461c0: 01400134 movhi r5,4 461c4: 29585004 addi r5,r5,24896 461c8: 0046a741 jmpi 46a74 <_fwalk_reent> 000461cc <__fp_unlock>: 461cc: 0005883a mov r2,zero 461d0: f800283a ret 000461d4 <_cleanup_r>: 461d4: 01400174 movhi r5,5 461d8: 296aa604 addi r5,r5,-21864 461dc: 0046a741 jmpi 46a74 <_fwalk_reent> 000461e0 <__sinit.part.1>: 461e0: defff704 addi sp,sp,-36 461e4: 00c00134 movhi r3,4 461e8: dfc00815 stw ra,32(sp) 461ec: ddc00715 stw r23,28(sp) 461f0: dd800615 stw r22,24(sp) 461f4: dd400515 stw r21,20(sp) 461f8: dd000415 stw r20,16(sp) 461fc: dcc00315 stw r19,12(sp) 46200: dc800215 stw r18,8(sp) 46204: dc400115 stw r17,4(sp) 46208: dc000015 stw r16,0(sp) 4620c: 18d87504 addi r3,r3,25044 46210: 24000117 ldw r16,4(r4) 46214: 20c00f15 stw r3,60(r4) 46218: 2080bb04 addi r2,r4,748 4621c: 00c000c4 movi r3,3 46220: 20c0b915 stw r3,740(r4) 46224: 2080ba15 stw r2,744(r4) 46228: 2000b815 stw zero,736(r4) 4622c: 05c00204 movi r23,8 46230: 00800104 movi r2,4 46234: 2025883a mov r18,r4 46238: b80d883a mov r6,r23 4623c: 81001704 addi r4,r16,92 46240: 000b883a mov r5,zero 46244: 80000015 stw zero,0(r16) 46248: 80000115 stw zero,4(r16) 4624c: 80000215 stw zero,8(r16) 46250: 8080030d sth r2,12(r16) 46254: 80001915 stw zero,100(r16) 46258: 8000038d sth zero,14(r16) 4625c: 80000415 stw zero,16(r16) 46260: 80000515 stw zero,20(r16) 46264: 80000615 stw zero,24(r16) 46268: 00478080 call 47808 4626c: 05800174 movhi r22,5 46270: 94400217 ldw r17,8(r18) 46274: 05400174 movhi r21,5 46278: 05000174 movhi r20,5 4627c: 04c00174 movhi r19,5 46280: b5a38204 addi r22,r22,-29176 46284: ad639904 addi r21,r21,-29084 46288: a523b804 addi r20,r20,-28960 4628c: 9ce3cf04 addi r19,r19,-28868 46290: 85800815 stw r22,32(r16) 46294: 85400915 stw r21,36(r16) 46298: 85000a15 stw r20,40(r16) 4629c: 84c00b15 stw r19,44(r16) 462a0: 84000715 stw r16,28(r16) 462a4: 00800284 movi r2,10 462a8: 8880030d sth r2,12(r17) 462ac: 00800044 movi r2,1 462b0: b80d883a mov r6,r23 462b4: 89001704 addi r4,r17,92 462b8: 000b883a mov r5,zero 462bc: 88000015 stw zero,0(r17) 462c0: 88000115 stw zero,4(r17) 462c4: 88000215 stw zero,8(r17) 462c8: 88001915 stw zero,100(r17) 462cc: 8880038d sth r2,14(r17) 462d0: 88000415 stw zero,16(r17) 462d4: 88000515 stw zero,20(r17) 462d8: 88000615 stw zero,24(r17) 462dc: 00478080 call 47808 462e0: 94000317 ldw r16,12(r18) 462e4: 00800484 movi r2,18 462e8: 8c400715 stw r17,28(r17) 462ec: 8d800815 stw r22,32(r17) 462f0: 8d400915 stw r21,36(r17) 462f4: 8d000a15 stw r20,40(r17) 462f8: 8cc00b15 stw r19,44(r17) 462fc: 8080030d sth r2,12(r16) 46300: 00800084 movi r2,2 46304: 80000015 stw zero,0(r16) 46308: 80000115 stw zero,4(r16) 4630c: 80000215 stw zero,8(r16) 46310: 80001915 stw zero,100(r16) 46314: 8080038d sth r2,14(r16) 46318: 80000415 stw zero,16(r16) 4631c: 80000515 stw zero,20(r16) 46320: 80000615 stw zero,24(r16) 46324: b80d883a mov r6,r23 46328: 000b883a mov r5,zero 4632c: 81001704 addi r4,r16,92 46330: 00478080 call 47808 46334: 00800044 movi r2,1 46338: 84000715 stw r16,28(r16) 4633c: 85800815 stw r22,32(r16) 46340: 85400915 stw r21,36(r16) 46344: 85000a15 stw r20,40(r16) 46348: 84c00b15 stw r19,44(r16) 4634c: 90800e15 stw r2,56(r18) 46350: dfc00817 ldw ra,32(sp) 46354: ddc00717 ldw r23,28(sp) 46358: dd800617 ldw r22,24(sp) 4635c: dd400517 ldw r21,20(sp) 46360: dd000417 ldw r20,16(sp) 46364: dcc00317 ldw r19,12(sp) 46368: dc800217 ldw r18,8(sp) 4636c: dc400117 ldw r17,4(sp) 46370: dc000017 ldw r16,0(sp) 46374: dec00904 addi sp,sp,36 46378: f800283a ret 0004637c <__fp_lock>: 4637c: 0005883a mov r2,zero 46380: f800283a ret 00046384 <__sfmoreglue>: 46384: defffc04 addi sp,sp,-16 46388: dc800215 stw r18,8(sp) 4638c: 2825883a mov r18,r5 46390: dc000015 stw r16,0(sp) 46394: 01401a04 movi r5,104 46398: 2021883a mov r16,r4 4639c: 913fffc4 addi r4,r18,-1 463a0: dfc00315 stw ra,12(sp) 463a4: dc400115 stw r17,4(sp) 463a8: 004c9f80 call 4c9f8 <__mulsi3> 463ac: 8009883a mov r4,r16 463b0: 11401d04 addi r5,r2,116 463b4: 1023883a mov r17,r2 463b8: 0046dd00 call 46dd0 <_malloc_r> 463bc: 1021883a mov r16,r2 463c0: 10000726 beq r2,zero,463e0 <__sfmoreglue+0x5c> 463c4: 11000304 addi r4,r2,12 463c8: 10000015 stw zero,0(r2) 463cc: 14800115 stw r18,4(r2) 463d0: 11000215 stw r4,8(r2) 463d4: 89801a04 addi r6,r17,104 463d8: 000b883a mov r5,zero 463dc: 00478080 call 47808 463e0: 8005883a mov r2,r16 463e4: dfc00317 ldw ra,12(sp) 463e8: dc800217 ldw r18,8(sp) 463ec: dc400117 ldw r17,4(sp) 463f0: dc000017 ldw r16,0(sp) 463f4: dec00404 addi sp,sp,16 463f8: f800283a ret 000463fc <__sfp>: 463fc: defffb04 addi sp,sp,-20 46400: dc000015 stw r16,0(sp) 46404: 04000174 movhi r16,5 46408: 84108a04 addi r16,r16,16936 4640c: dcc00315 stw r19,12(sp) 46410: 2027883a mov r19,r4 46414: 81000017 ldw r4,0(r16) 46418: dfc00415 stw ra,16(sp) 4641c: dc800215 stw r18,8(sp) 46420: 20800e17 ldw r2,56(r4) 46424: dc400115 stw r17,4(sp) 46428: 1000021e bne r2,zero,46434 <__sfp+0x38> 4642c: 00461e00 call 461e0 <__sinit.part.1> 46430: 81000017 ldw r4,0(r16) 46434: 2480b804 addi r18,r4,736 46438: 047fffc4 movi r17,-1 4643c: 91000117 ldw r4,4(r18) 46440: 94000217 ldw r16,8(r18) 46444: 213fffc4 addi r4,r4,-1 46448: 20000a16 blt r4,zero,46474 <__sfp+0x78> 4644c: 8080030f ldh r2,12(r16) 46450: 10000c26 beq r2,zero,46484 <__sfp+0x88> 46454: 80c01d04 addi r3,r16,116 46458: 00000206 br 46464 <__sfp+0x68> 4645c: 18bfe60f ldh r2,-104(r3) 46460: 10000826 beq r2,zero,46484 <__sfp+0x88> 46464: 213fffc4 addi r4,r4,-1 46468: 1c3ffd04 addi r16,r3,-12 4646c: 18c01a04 addi r3,r3,104 46470: 247ffa1e bne r4,r17,4645c <__alt_data_end+0xfffd445c> 46474: 90800017 ldw r2,0(r18) 46478: 10001d26 beq r2,zero,464f0 <__sfp+0xf4> 4647c: 1025883a mov r18,r2 46480: 003fee06 br 4643c <__alt_data_end+0xfffd443c> 46484: 00bfffc4 movi r2,-1 46488: 8080038d sth r2,14(r16) 4648c: 00800044 movi r2,1 46490: 8080030d sth r2,12(r16) 46494: 80001915 stw zero,100(r16) 46498: 80000015 stw zero,0(r16) 4649c: 80000215 stw zero,8(r16) 464a0: 80000115 stw zero,4(r16) 464a4: 80000415 stw zero,16(r16) 464a8: 80000515 stw zero,20(r16) 464ac: 80000615 stw zero,24(r16) 464b0: 01800204 movi r6,8 464b4: 000b883a mov r5,zero 464b8: 81001704 addi r4,r16,92 464bc: 00478080 call 47808 464c0: 8005883a mov r2,r16 464c4: 80000c15 stw zero,48(r16) 464c8: 80000d15 stw zero,52(r16) 464cc: 80001115 stw zero,68(r16) 464d0: 80001215 stw zero,72(r16) 464d4: dfc00417 ldw ra,16(sp) 464d8: dcc00317 ldw r19,12(sp) 464dc: dc800217 ldw r18,8(sp) 464e0: dc400117 ldw r17,4(sp) 464e4: dc000017 ldw r16,0(sp) 464e8: dec00504 addi sp,sp,20 464ec: f800283a ret 464f0: 01400104 movi r5,4 464f4: 9809883a mov r4,r19 464f8: 00463840 call 46384 <__sfmoreglue> 464fc: 90800015 stw r2,0(r18) 46500: 103fde1e bne r2,zero,4647c <__alt_data_end+0xfffd447c> 46504: 00800304 movi r2,12 46508: 98800015 stw r2,0(r19) 4650c: 0005883a mov r2,zero 46510: 003ff006 br 464d4 <__alt_data_end+0xfffd44d4> 00046514 <_cleanup>: 46514: 00800174 movhi r2,5 46518: 10908a04 addi r2,r2,16936 4651c: 11000017 ldw r4,0(r2) 46520: 01400174 movhi r5,5 46524: 296aa604 addi r5,r5,-21864 46528: 0046a741 jmpi 46a74 <_fwalk_reent> 0004652c <__sinit>: 4652c: 20800e17 ldw r2,56(r4) 46530: 10000126 beq r2,zero,46538 <__sinit+0xc> 46534: f800283a ret 46538: 00461e01 jmpi 461e0 <__sinit.part.1> 0004653c <__sfp_lock_acquire>: 4653c: f800283a ret 00046540 <__sfp_lock_release>: 46540: f800283a ret 00046544 <__sinit_lock_acquire>: 46544: f800283a ret 00046548 <__sinit_lock_release>: 46548: f800283a ret 0004654c <__fp_lock_all>: 4654c: 00800174 movhi r2,5 46550: 10908b04 addi r2,r2,16940 46554: 11000017 ldw r4,0(r2) 46558: 01400134 movhi r5,4 4655c: 2958df04 addi r5,r5,25468 46560: 00469b01 jmpi 469b0 <_fwalk> 00046564 <__fp_unlock_all>: 46564: 00800174 movhi r2,5 46568: 10908b04 addi r2,r2,16940 4656c: 11000017 ldw r4,0(r2) 46570: 01400134 movhi r5,4 46574: 29587304 addi r5,r5,25036 46578: 00469b01 jmpi 469b0 <_fwalk> 0004657c <_malloc_trim_r>: 4657c: defffb04 addi sp,sp,-20 46580: dcc00315 stw r19,12(sp) 46584: 04c00174 movhi r19,5 46588: dc800215 stw r18,8(sp) 4658c: dc400115 stw r17,4(sp) 46590: dc000015 stw r16,0(sp) 46594: dfc00415 stw ra,16(sp) 46598: 2821883a mov r16,r5 4659c: 9ccabe04 addi r19,r19,11000 465a0: 2025883a mov r18,r4 465a4: 004edf40 call 4edf4 <__malloc_lock> 465a8: 98800217 ldw r2,8(r19) 465ac: 14400117 ldw r17,4(r2) 465b0: 00bfff04 movi r2,-4 465b4: 88a2703a and r17,r17,r2 465b8: 8c21c83a sub r16,r17,r16 465bc: 8403fbc4 addi r16,r16,4079 465c0: 8020d33a srli r16,r16,12 465c4: 0083ffc4 movi r2,4095 465c8: 843fffc4 addi r16,r16,-1 465cc: 8020933a slli r16,r16,12 465d0: 1400060e bge r2,r16,465ec <_malloc_trim_r+0x70> 465d4: 000b883a mov r5,zero 465d8: 9009883a mov r4,r18 465dc: 0048db40 call 48db4 <_sbrk_r> 465e0: 98c00217 ldw r3,8(r19) 465e4: 1c47883a add r3,r3,r17 465e8: 10c00a26 beq r2,r3,46614 <_malloc_trim_r+0x98> 465ec: 9009883a mov r4,r18 465f0: 004ee180 call 4ee18 <__malloc_unlock> 465f4: 0005883a mov r2,zero 465f8: dfc00417 ldw ra,16(sp) 465fc: dcc00317 ldw r19,12(sp) 46600: dc800217 ldw r18,8(sp) 46604: dc400117 ldw r17,4(sp) 46608: dc000017 ldw r16,0(sp) 4660c: dec00504 addi sp,sp,20 46610: f800283a ret 46614: 040bc83a sub r5,zero,r16 46618: 9009883a mov r4,r18 4661c: 0048db40 call 48db4 <_sbrk_r> 46620: 00ffffc4 movi r3,-1 46624: 10c00d26 beq r2,r3,4665c <_malloc_trim_r+0xe0> 46628: 00c00174 movhi r3,5 4662c: 18d7b304 addi r3,r3,24268 46630: 18800017 ldw r2,0(r3) 46634: 99000217 ldw r4,8(r19) 46638: 8c23c83a sub r17,r17,r16 4663c: 8c400054 ori r17,r17,1 46640: 1421c83a sub r16,r2,r16 46644: 24400115 stw r17,4(r4) 46648: 9009883a mov r4,r18 4664c: 1c000015 stw r16,0(r3) 46650: 004ee180 call 4ee18 <__malloc_unlock> 46654: 00800044 movi r2,1 46658: 003fe706 br 465f8 <__alt_data_end+0xfffd45f8> 4665c: 000b883a mov r5,zero 46660: 9009883a mov r4,r18 46664: 0048db40 call 48db4 <_sbrk_r> 46668: 99000217 ldw r4,8(r19) 4666c: 014003c4 movi r5,15 46670: 1107c83a sub r3,r2,r4 46674: 28ffdd0e bge r5,r3,465ec <__alt_data_end+0xfffd45ec> 46678: 01400174 movhi r5,5 4667c: 29508d04 addi r5,r5,16948 46680: 29400017 ldw r5,0(r5) 46684: 18c00054 ori r3,r3,1 46688: 20c00115 stw r3,4(r4) 4668c: 00c00174 movhi r3,5 46690: 1145c83a sub r2,r2,r5 46694: 18d7b304 addi r3,r3,24268 46698: 18800015 stw r2,0(r3) 4669c: 003fd306 br 465ec <__alt_data_end+0xfffd45ec> 000466a0 <_free_r>: 466a0: 28004126 beq r5,zero,467a8 <_free_r+0x108> 466a4: defffd04 addi sp,sp,-12 466a8: dc400115 stw r17,4(sp) 466ac: dc000015 stw r16,0(sp) 466b0: 2023883a mov r17,r4 466b4: 2821883a mov r16,r5 466b8: dfc00215 stw ra,8(sp) 466bc: 004edf40 call 4edf4 <__malloc_lock> 466c0: 81ffff17 ldw r7,-4(r16) 466c4: 00bfff84 movi r2,-2 466c8: 01000174 movhi r4,5 466cc: 81bffe04 addi r6,r16,-8 466d0: 3884703a and r2,r7,r2 466d4: 210abe04 addi r4,r4,11000 466d8: 308b883a add r5,r6,r2 466dc: 2a400117 ldw r9,4(r5) 466e0: 22000217 ldw r8,8(r4) 466e4: 00ffff04 movi r3,-4 466e8: 48c6703a and r3,r9,r3 466ec: 2a005726 beq r5,r8,4684c <_free_r+0x1ac> 466f0: 28c00115 stw r3,4(r5) 466f4: 39c0004c andi r7,r7,1 466f8: 3800091e bne r7,zero,46720 <_free_r+0x80> 466fc: 823ffe17 ldw r8,-8(r16) 46700: 22400204 addi r9,r4,8 46704: 320dc83a sub r6,r6,r8 46708: 31c00217 ldw r7,8(r6) 4670c: 1205883a add r2,r2,r8 46710: 3a406526 beq r7,r9,468a8 <_free_r+0x208> 46714: 32000317 ldw r8,12(r6) 46718: 3a000315 stw r8,12(r7) 4671c: 41c00215 stw r7,8(r8) 46720: 28cf883a add r7,r5,r3 46724: 39c00117 ldw r7,4(r7) 46728: 39c0004c andi r7,r7,1 4672c: 38003a26 beq r7,zero,46818 <_free_r+0x178> 46730: 10c00054 ori r3,r2,1 46734: 30c00115 stw r3,4(r6) 46738: 3087883a add r3,r6,r2 4673c: 18800015 stw r2,0(r3) 46740: 00c07fc4 movi r3,511 46744: 18801936 bltu r3,r2,467ac <_free_r+0x10c> 46748: 1004d0fa srli r2,r2,3 4674c: 01c00044 movi r7,1 46750: 21400117 ldw r5,4(r4) 46754: 10c00044 addi r3,r2,1 46758: 18c7883a add r3,r3,r3 4675c: 1005d0ba srai r2,r2,2 46760: 18c7883a add r3,r3,r3 46764: 18c7883a add r3,r3,r3 46768: 1907883a add r3,r3,r4 4676c: 3884983a sll r2,r7,r2 46770: 19c00017 ldw r7,0(r3) 46774: 1a3ffe04 addi r8,r3,-8 46778: 1144b03a or r2,r2,r5 4677c: 32000315 stw r8,12(r6) 46780: 31c00215 stw r7,8(r6) 46784: 20800115 stw r2,4(r4) 46788: 19800015 stw r6,0(r3) 4678c: 39800315 stw r6,12(r7) 46790: 8809883a mov r4,r17 46794: dfc00217 ldw ra,8(sp) 46798: dc400117 ldw r17,4(sp) 4679c: dc000017 ldw r16,0(sp) 467a0: dec00304 addi sp,sp,12 467a4: 004ee181 jmpi 4ee18 <__malloc_unlock> 467a8: f800283a ret 467ac: 100ad27a srli r5,r2,9 467b0: 00c00104 movi r3,4 467b4: 19404a36 bltu r3,r5,468e0 <_free_r+0x240> 467b8: 100ad1ba srli r5,r2,6 467bc: 28c00e44 addi r3,r5,57 467c0: 18c7883a add r3,r3,r3 467c4: 29400e04 addi r5,r5,56 467c8: 18c7883a add r3,r3,r3 467cc: 18c7883a add r3,r3,r3 467d0: 1909883a add r4,r3,r4 467d4: 20c00017 ldw r3,0(r4) 467d8: 01c00174 movhi r7,5 467dc: 213ffe04 addi r4,r4,-8 467e0: 39cabe04 addi r7,r7,11000 467e4: 20c04426 beq r4,r3,468f8 <_free_r+0x258> 467e8: 01ffff04 movi r7,-4 467ec: 19400117 ldw r5,4(r3) 467f0: 29ca703a and r5,r5,r7 467f4: 1140022e bgeu r2,r5,46800 <_free_r+0x160> 467f8: 18c00217 ldw r3,8(r3) 467fc: 20fffb1e bne r4,r3,467ec <__alt_data_end+0xfffd47ec> 46800: 19000317 ldw r4,12(r3) 46804: 31000315 stw r4,12(r6) 46808: 30c00215 stw r3,8(r6) 4680c: 21800215 stw r6,8(r4) 46810: 19800315 stw r6,12(r3) 46814: 003fde06 br 46790 <__alt_data_end+0xfffd4790> 46818: 29c00217 ldw r7,8(r5) 4681c: 10c5883a add r2,r2,r3 46820: 00c00174 movhi r3,5 46824: 18cac004 addi r3,r3,11008 46828: 38c03b26 beq r7,r3,46918 <_free_r+0x278> 4682c: 2a000317 ldw r8,12(r5) 46830: 11400054 ori r5,r2,1 46834: 3087883a add r3,r6,r2 46838: 3a000315 stw r8,12(r7) 4683c: 41c00215 stw r7,8(r8) 46840: 31400115 stw r5,4(r6) 46844: 18800015 stw r2,0(r3) 46848: 003fbd06 br 46740 <__alt_data_end+0xfffd4740> 4684c: 39c0004c andi r7,r7,1 46850: 10c5883a add r2,r2,r3 46854: 3800071e bne r7,zero,46874 <_free_r+0x1d4> 46858: 81fffe17 ldw r7,-8(r16) 4685c: 31cdc83a sub r6,r6,r7 46860: 30c00317 ldw r3,12(r6) 46864: 31400217 ldw r5,8(r6) 46868: 11c5883a add r2,r2,r7 4686c: 28c00315 stw r3,12(r5) 46870: 19400215 stw r5,8(r3) 46874: 10c00054 ori r3,r2,1 46878: 30c00115 stw r3,4(r6) 4687c: 00c00174 movhi r3,5 46880: 18d08e04 addi r3,r3,16952 46884: 18c00017 ldw r3,0(r3) 46888: 21800215 stw r6,8(r4) 4688c: 10ffc036 bltu r2,r3,46790 <__alt_data_end+0xfffd4790> 46890: 00800174 movhi r2,5 46894: 1097aa04 addi r2,r2,24232 46898: 11400017 ldw r5,0(r2) 4689c: 8809883a mov r4,r17 468a0: 004657c0 call 4657c <_malloc_trim_r> 468a4: 003fba06 br 46790 <__alt_data_end+0xfffd4790> 468a8: 28c9883a add r4,r5,r3 468ac: 21000117 ldw r4,4(r4) 468b0: 2100004c andi r4,r4,1 468b4: 2000391e bne r4,zero,4699c <_free_r+0x2fc> 468b8: 29c00217 ldw r7,8(r5) 468bc: 29000317 ldw r4,12(r5) 468c0: 1885883a add r2,r3,r2 468c4: 10c00054 ori r3,r2,1 468c8: 39000315 stw r4,12(r7) 468cc: 21c00215 stw r7,8(r4) 468d0: 30c00115 stw r3,4(r6) 468d4: 308d883a add r6,r6,r2 468d8: 30800015 stw r2,0(r6) 468dc: 003fac06 br 46790 <__alt_data_end+0xfffd4790> 468e0: 00c00504 movi r3,20 468e4: 19401536 bltu r3,r5,4693c <_free_r+0x29c> 468e8: 28c01704 addi r3,r5,92 468ec: 18c7883a add r3,r3,r3 468f0: 294016c4 addi r5,r5,91 468f4: 003fb406 br 467c8 <__alt_data_end+0xfffd47c8> 468f8: 280bd0ba srai r5,r5,2 468fc: 00c00044 movi r3,1 46900: 38800117 ldw r2,4(r7) 46904: 194a983a sll r5,r3,r5 46908: 2007883a mov r3,r4 4690c: 2884b03a or r2,r5,r2 46910: 38800115 stw r2,4(r7) 46914: 003fbb06 br 46804 <__alt_data_end+0xfffd4804> 46918: 21800515 stw r6,20(r4) 4691c: 21800415 stw r6,16(r4) 46920: 10c00054 ori r3,r2,1 46924: 31c00315 stw r7,12(r6) 46928: 31c00215 stw r7,8(r6) 4692c: 30c00115 stw r3,4(r6) 46930: 308d883a add r6,r6,r2 46934: 30800015 stw r2,0(r6) 46938: 003f9506 br 46790 <__alt_data_end+0xfffd4790> 4693c: 00c01504 movi r3,84 46940: 19400536 bltu r3,r5,46958 <_free_r+0x2b8> 46944: 100ad33a srli r5,r2,12 46948: 28c01bc4 addi r3,r5,111 4694c: 18c7883a add r3,r3,r3 46950: 29401b84 addi r5,r5,110 46954: 003f9c06 br 467c8 <__alt_data_end+0xfffd47c8> 46958: 00c05504 movi r3,340 4695c: 19400536 bltu r3,r5,46974 <_free_r+0x2d4> 46960: 100ad3fa srli r5,r2,15 46964: 28c01e04 addi r3,r5,120 46968: 18c7883a add r3,r3,r3 4696c: 29401dc4 addi r5,r5,119 46970: 003f9506 br 467c8 <__alt_data_end+0xfffd47c8> 46974: 00c15504 movi r3,1364 46978: 19400536 bltu r3,r5,46990 <_free_r+0x2f0> 4697c: 100ad4ba srli r5,r2,18 46980: 28c01f44 addi r3,r5,125 46984: 18c7883a add r3,r3,r3 46988: 29401f04 addi r5,r5,124 4698c: 003f8e06 br 467c8 <__alt_data_end+0xfffd47c8> 46990: 00c03f84 movi r3,254 46994: 01401f84 movi r5,126 46998: 003f8b06 br 467c8 <__alt_data_end+0xfffd47c8> 4699c: 10c00054 ori r3,r2,1 469a0: 30c00115 stw r3,4(r6) 469a4: 308d883a add r6,r6,r2 469a8: 30800015 stw r2,0(r6) 469ac: 003f7806 br 46790 <__alt_data_end+0xfffd4790> 000469b0 <_fwalk>: 469b0: defff704 addi sp,sp,-36 469b4: dd000415 stw r20,16(sp) 469b8: dfc00815 stw ra,32(sp) 469bc: ddc00715 stw r23,28(sp) 469c0: dd800615 stw r22,24(sp) 469c4: dd400515 stw r21,20(sp) 469c8: dcc00315 stw r19,12(sp) 469cc: dc800215 stw r18,8(sp) 469d0: dc400115 stw r17,4(sp) 469d4: dc000015 stw r16,0(sp) 469d8: 2500b804 addi r20,r4,736 469dc: a0002326 beq r20,zero,46a6c <_fwalk+0xbc> 469e0: 282b883a mov r21,r5 469e4: 002f883a mov r23,zero 469e8: 05800044 movi r22,1 469ec: 04ffffc4 movi r19,-1 469f0: a4400117 ldw r17,4(r20) 469f4: a4800217 ldw r18,8(r20) 469f8: 8c7fffc4 addi r17,r17,-1 469fc: 88000d16 blt r17,zero,46a34 <_fwalk+0x84> 46a00: 94000304 addi r16,r18,12 46a04: 94800384 addi r18,r18,14 46a08: 8080000b ldhu r2,0(r16) 46a0c: 8c7fffc4 addi r17,r17,-1 46a10: 813ffd04 addi r4,r16,-12 46a14: b080042e bgeu r22,r2,46a28 <_fwalk+0x78> 46a18: 9080000f ldh r2,0(r18) 46a1c: 14c00226 beq r2,r19,46a28 <_fwalk+0x78> 46a20: a83ee83a callr r21 46a24: b8aeb03a or r23,r23,r2 46a28: 84001a04 addi r16,r16,104 46a2c: 94801a04 addi r18,r18,104 46a30: 8cfff51e bne r17,r19,46a08 <__alt_data_end+0xfffd4a08> 46a34: a5000017 ldw r20,0(r20) 46a38: a03fed1e bne r20,zero,469f0 <__alt_data_end+0xfffd49f0> 46a3c: b805883a mov r2,r23 46a40: dfc00817 ldw ra,32(sp) 46a44: ddc00717 ldw r23,28(sp) 46a48: dd800617 ldw r22,24(sp) 46a4c: dd400517 ldw r21,20(sp) 46a50: dd000417 ldw r20,16(sp) 46a54: dcc00317 ldw r19,12(sp) 46a58: dc800217 ldw r18,8(sp) 46a5c: dc400117 ldw r17,4(sp) 46a60: dc000017 ldw r16,0(sp) 46a64: dec00904 addi sp,sp,36 46a68: f800283a ret 46a6c: 002f883a mov r23,zero 46a70: 003ff206 br 46a3c <__alt_data_end+0xfffd4a3c> 00046a74 <_fwalk_reent>: 46a74: defff704 addi sp,sp,-36 46a78: dd000415 stw r20,16(sp) 46a7c: dfc00815 stw ra,32(sp) 46a80: ddc00715 stw r23,28(sp) 46a84: dd800615 stw r22,24(sp) 46a88: dd400515 stw r21,20(sp) 46a8c: dcc00315 stw r19,12(sp) 46a90: dc800215 stw r18,8(sp) 46a94: dc400115 stw r17,4(sp) 46a98: dc000015 stw r16,0(sp) 46a9c: 2500b804 addi r20,r4,736 46aa0: a0002326 beq r20,zero,46b30 <_fwalk_reent+0xbc> 46aa4: 282b883a mov r21,r5 46aa8: 2027883a mov r19,r4 46aac: 002f883a mov r23,zero 46ab0: 05800044 movi r22,1 46ab4: 04bfffc4 movi r18,-1 46ab8: a4400117 ldw r17,4(r20) 46abc: a4000217 ldw r16,8(r20) 46ac0: 8c7fffc4 addi r17,r17,-1 46ac4: 88000c16 blt r17,zero,46af8 <_fwalk_reent+0x84> 46ac8: 84000304 addi r16,r16,12 46acc: 8080000b ldhu r2,0(r16) 46ad0: 8c7fffc4 addi r17,r17,-1 46ad4: 817ffd04 addi r5,r16,-12 46ad8: b080052e bgeu r22,r2,46af0 <_fwalk_reent+0x7c> 46adc: 8080008f ldh r2,2(r16) 46ae0: 9809883a mov r4,r19 46ae4: 14800226 beq r2,r18,46af0 <_fwalk_reent+0x7c> 46ae8: a83ee83a callr r21 46aec: b8aeb03a or r23,r23,r2 46af0: 84001a04 addi r16,r16,104 46af4: 8cbff51e bne r17,r18,46acc <__alt_data_end+0xfffd4acc> 46af8: a5000017 ldw r20,0(r20) 46afc: a03fee1e bne r20,zero,46ab8 <__alt_data_end+0xfffd4ab8> 46b00: b805883a mov r2,r23 46b04: dfc00817 ldw ra,32(sp) 46b08: ddc00717 ldw r23,28(sp) 46b0c: dd800617 ldw r22,24(sp) 46b10: dd400517 ldw r21,20(sp) 46b14: dd000417 ldw r20,16(sp) 46b18: dcc00317 ldw r19,12(sp) 46b1c: dc800217 ldw r18,8(sp) 46b20: dc400117 ldw r17,4(sp) 46b24: dc000017 ldw r16,0(sp) 46b28: dec00904 addi sp,sp,36 46b2c: f800283a ret 46b30: 002f883a mov r23,zero 46b34: 003ff206 br 46b00 <__alt_data_end+0xfffd4b00> 00046b38 <_setlocale_r>: 46b38: 30001b26 beq r6,zero,46ba8 <_setlocale_r+0x70> 46b3c: 01400174 movhi r5,5 46b40: defffe04 addi sp,sp,-8 46b44: 29489404 addi r5,r5,8784 46b48: 3009883a mov r4,r6 46b4c: dc000015 stw r16,0(sp) 46b50: dfc00115 stw ra,4(sp) 46b54: 3021883a mov r16,r6 46b58: 0048f440 call 48f44 46b5c: 1000061e bne r2,zero,46b78 <_setlocale_r+0x40> 46b60: 00800174 movhi r2,5 46b64: 10887604 addi r2,r2,8664 46b68: dfc00117 ldw ra,4(sp) 46b6c: dc000017 ldw r16,0(sp) 46b70: dec00204 addi sp,sp,8 46b74: f800283a ret 46b78: 01400174 movhi r5,5 46b7c: 29487604 addi r5,r5,8664 46b80: 8009883a mov r4,r16 46b84: 0048f440 call 48f44 46b88: 103ff526 beq r2,zero,46b60 <__alt_data_end+0xfffd4b60> 46b8c: 01400174 movhi r5,5 46b90: 29487f04 addi r5,r5,8700 46b94: 8009883a mov r4,r16 46b98: 0048f440 call 48f44 46b9c: 103ff026 beq r2,zero,46b60 <__alt_data_end+0xfffd4b60> 46ba0: 0005883a mov r2,zero 46ba4: 003ff006 br 46b68 <__alt_data_end+0xfffd4b68> 46ba8: 00800174 movhi r2,5 46bac: 10887604 addi r2,r2,8664 46bb0: f800283a ret 00046bb4 <__locale_charset>: 46bb4: 00800174 movhi r2,5 46bb8: 108aa804 addi r2,r2,10912 46bbc: f800283a ret 00046bc0 <__locale_mb_cur_max>: 46bc0: 00800174 movhi r2,5 46bc4: 10908c04 addi r2,r2,16944 46bc8: 10800017 ldw r2,0(r2) 46bcc: f800283a ret 00046bd0 <__locale_msgcharset>: 46bd0: 00800174 movhi r2,5 46bd4: 108aa004 addi r2,r2,10880 46bd8: f800283a ret 00046bdc <__locale_cjk_lang>: 46bdc: 0005883a mov r2,zero 46be0: f800283a ret 00046be4 <_localeconv_r>: 46be4: 00800174 movhi r2,5 46be8: 108ab004 addi r2,r2,10944 46bec: f800283a ret 00046bf0 : 46bf0: 00800174 movhi r2,5 46bf4: 10908b04 addi r2,r2,16940 46bf8: 280d883a mov r6,r5 46bfc: 200b883a mov r5,r4 46c00: 11000017 ldw r4,0(r2) 46c04: 0046b381 jmpi 46b38 <_setlocale_r> 00046c08 : 46c08: 00800174 movhi r2,5 46c0c: 108ab004 addi r2,r2,10944 46c10: f800283a ret 00046c14 <__smakebuf_r>: 46c14: 2880030b ldhu r2,12(r5) 46c18: 10c0008c andi r3,r2,2 46c1c: 1800411e bne r3,zero,46d24 <__smakebuf_r+0x110> 46c20: deffec04 addi sp,sp,-80 46c24: dc000f15 stw r16,60(sp) 46c28: 2821883a mov r16,r5 46c2c: 2940038f ldh r5,14(r5) 46c30: dc401015 stw r17,64(sp) 46c34: dfc01315 stw ra,76(sp) 46c38: dcc01215 stw r19,72(sp) 46c3c: dc801115 stw r18,68(sp) 46c40: 2023883a mov r17,r4 46c44: 28001c16 blt r5,zero,46cb8 <__smakebuf_r+0xa4> 46c48: d80d883a mov r6,sp 46c4c: 004ada40 call 4ada4 <_fstat_r> 46c50: 10001816 blt r2,zero,46cb4 <__smakebuf_r+0xa0> 46c54: d8800117 ldw r2,4(sp) 46c58: 00e00014 movui r3,32768 46c5c: 10bc000c andi r2,r2,61440 46c60: 14c80020 cmpeqi r19,r2,8192 46c64: 10c03726 beq r2,r3,46d44 <__smakebuf_r+0x130> 46c68: 80c0030b ldhu r3,12(r16) 46c6c: 18c20014 ori r3,r3,2048 46c70: 80c0030d sth r3,12(r16) 46c74: 00c80004 movi r3,8192 46c78: 10c0521e bne r2,r3,46dc4 <__smakebuf_r+0x1b0> 46c7c: 8140038f ldh r5,14(r16) 46c80: 8809883a mov r4,r17 46c84: 004b2c80 call 4b2c8 <_isatty_r> 46c88: 10004c26 beq r2,zero,46dbc <__smakebuf_r+0x1a8> 46c8c: 8080030b ldhu r2,12(r16) 46c90: 80c010c4 addi r3,r16,67 46c94: 80c00015 stw r3,0(r16) 46c98: 10800054 ori r2,r2,1 46c9c: 8080030d sth r2,12(r16) 46ca0: 00800044 movi r2,1 46ca4: 80c00415 stw r3,16(r16) 46ca8: 80800515 stw r2,20(r16) 46cac: 04810004 movi r18,1024 46cb0: 00000706 br 46cd0 <__smakebuf_r+0xbc> 46cb4: 8080030b ldhu r2,12(r16) 46cb8: 10c0200c andi r3,r2,128 46cbc: 18001f1e bne r3,zero,46d3c <__smakebuf_r+0x128> 46cc0: 04810004 movi r18,1024 46cc4: 10820014 ori r2,r2,2048 46cc8: 8080030d sth r2,12(r16) 46ccc: 0027883a mov r19,zero 46cd0: 900b883a mov r5,r18 46cd4: 8809883a mov r4,r17 46cd8: 0046dd00 call 46dd0 <_malloc_r> 46cdc: 10002c26 beq r2,zero,46d90 <__smakebuf_r+0x17c> 46ce0: 80c0030b ldhu r3,12(r16) 46ce4: 01000134 movhi r4,4 46ce8: 21187504 addi r4,r4,25044 46cec: 89000f15 stw r4,60(r17) 46cf0: 18c02014 ori r3,r3,128 46cf4: 80c0030d sth r3,12(r16) 46cf8: 80800015 stw r2,0(r16) 46cfc: 80800415 stw r2,16(r16) 46d00: 84800515 stw r18,20(r16) 46d04: 98001a1e bne r19,zero,46d70 <__smakebuf_r+0x15c> 46d08: dfc01317 ldw ra,76(sp) 46d0c: dcc01217 ldw r19,72(sp) 46d10: dc801117 ldw r18,68(sp) 46d14: dc401017 ldw r17,64(sp) 46d18: dc000f17 ldw r16,60(sp) 46d1c: dec01404 addi sp,sp,80 46d20: f800283a ret 46d24: 288010c4 addi r2,r5,67 46d28: 28800015 stw r2,0(r5) 46d2c: 28800415 stw r2,16(r5) 46d30: 00800044 movi r2,1 46d34: 28800515 stw r2,20(r5) 46d38: f800283a ret 46d3c: 04801004 movi r18,64 46d40: 003fe006 br 46cc4 <__alt_data_end+0xfffd4cc4> 46d44: 81000a17 ldw r4,40(r16) 46d48: 00c00174 movhi r3,5 46d4c: 18e3b804 addi r3,r3,-28960 46d50: 20ffc51e bne r4,r3,46c68 <__alt_data_end+0xfffd4c68> 46d54: 8080030b ldhu r2,12(r16) 46d58: 04810004 movi r18,1024 46d5c: 84801315 stw r18,76(r16) 46d60: 1484b03a or r2,r2,r18 46d64: 8080030d sth r2,12(r16) 46d68: 0027883a mov r19,zero 46d6c: 003fd806 br 46cd0 <__alt_data_end+0xfffd4cd0> 46d70: 8140038f ldh r5,14(r16) 46d74: 8809883a mov r4,r17 46d78: 004b2c80 call 4b2c8 <_isatty_r> 46d7c: 103fe226 beq r2,zero,46d08 <__alt_data_end+0xfffd4d08> 46d80: 8080030b ldhu r2,12(r16) 46d84: 10800054 ori r2,r2,1 46d88: 8080030d sth r2,12(r16) 46d8c: 003fde06 br 46d08 <__alt_data_end+0xfffd4d08> 46d90: 8080030b ldhu r2,12(r16) 46d94: 10c0800c andi r3,r2,512 46d98: 183fdb1e bne r3,zero,46d08 <__alt_data_end+0xfffd4d08> 46d9c: 10800094 ori r2,r2,2 46da0: 80c010c4 addi r3,r16,67 46da4: 8080030d sth r2,12(r16) 46da8: 00800044 movi r2,1 46dac: 80c00015 stw r3,0(r16) 46db0: 80c00415 stw r3,16(r16) 46db4: 80800515 stw r2,20(r16) 46db8: 003fd306 br 46d08 <__alt_data_end+0xfffd4d08> 46dbc: 04810004 movi r18,1024 46dc0: 003fc306 br 46cd0 <__alt_data_end+0xfffd4cd0> 46dc4: 0027883a mov r19,zero 46dc8: 04810004 movi r18,1024 46dcc: 003fc006 br 46cd0 <__alt_data_end+0xfffd4cd0> 00046dd0 <_malloc_r>: 46dd0: defff504 addi sp,sp,-44 46dd4: dc800315 stw r18,12(sp) 46dd8: dfc00a15 stw ra,40(sp) 46ddc: df000915 stw fp,36(sp) 46de0: ddc00815 stw r23,32(sp) 46de4: dd800715 stw r22,28(sp) 46de8: dd400615 stw r21,24(sp) 46dec: dd000515 stw r20,20(sp) 46df0: dcc00415 stw r19,16(sp) 46df4: dc400215 stw r17,8(sp) 46df8: dc000115 stw r16,4(sp) 46dfc: 288002c4 addi r2,r5,11 46e00: 00c00584 movi r3,22 46e04: 2025883a mov r18,r4 46e08: 18807f2e bgeu r3,r2,47008 <_malloc_r+0x238> 46e0c: 047ffe04 movi r17,-8 46e10: 1462703a and r17,r2,r17 46e14: 8800a316 blt r17,zero,470a4 <_malloc_r+0x2d4> 46e18: 8940a236 bltu r17,r5,470a4 <_malloc_r+0x2d4> 46e1c: 004edf40 call 4edf4 <__malloc_lock> 46e20: 00807dc4 movi r2,503 46e24: 1441e92e bgeu r2,r17,475cc <_malloc_r+0x7fc> 46e28: 8804d27a srli r2,r17,9 46e2c: 1000a126 beq r2,zero,470b4 <_malloc_r+0x2e4> 46e30: 00c00104 movi r3,4 46e34: 18811e36 bltu r3,r2,472b0 <_malloc_r+0x4e0> 46e38: 8804d1ba srli r2,r17,6 46e3c: 12000e44 addi r8,r2,57 46e40: 11c00e04 addi r7,r2,56 46e44: 4209883a add r4,r8,r8 46e48: 04c00174 movhi r19,5 46e4c: 2109883a add r4,r4,r4 46e50: 9ccabe04 addi r19,r19,11000 46e54: 2109883a add r4,r4,r4 46e58: 9909883a add r4,r19,r4 46e5c: 24000117 ldw r16,4(r4) 46e60: 213ffe04 addi r4,r4,-8 46e64: 24009726 beq r4,r16,470c4 <_malloc_r+0x2f4> 46e68: 80800117 ldw r2,4(r16) 46e6c: 01bfff04 movi r6,-4 46e70: 014003c4 movi r5,15 46e74: 1184703a and r2,r2,r6 46e78: 1447c83a sub r3,r2,r17 46e7c: 28c00716 blt r5,r3,46e9c <_malloc_r+0xcc> 46e80: 1800920e bge r3,zero,470cc <_malloc_r+0x2fc> 46e84: 84000317 ldw r16,12(r16) 46e88: 24008e26 beq r4,r16,470c4 <_malloc_r+0x2f4> 46e8c: 80800117 ldw r2,4(r16) 46e90: 1184703a and r2,r2,r6 46e94: 1447c83a sub r3,r2,r17 46e98: 28fff90e bge r5,r3,46e80 <__alt_data_end+0xfffd4e80> 46e9c: 3809883a mov r4,r7 46ea0: 01800174 movhi r6,5 46ea4: 9c000417 ldw r16,16(r19) 46ea8: 318abe04 addi r6,r6,11000 46eac: 32000204 addi r8,r6,8 46eb0: 82013426 beq r16,r8,47384 <_malloc_r+0x5b4> 46eb4: 80c00117 ldw r3,4(r16) 46eb8: 00bfff04 movi r2,-4 46ebc: 188e703a and r7,r3,r2 46ec0: 3c45c83a sub r2,r7,r17 46ec4: 00c003c4 movi r3,15 46ec8: 18811f16 blt r3,r2,47348 <_malloc_r+0x578> 46ecc: 32000515 stw r8,20(r6) 46ed0: 32000415 stw r8,16(r6) 46ed4: 10007f0e bge r2,zero,470d4 <_malloc_r+0x304> 46ed8: 00807fc4 movi r2,511 46edc: 11c0fd36 bltu r2,r7,472d4 <_malloc_r+0x504> 46ee0: 3806d0fa srli r3,r7,3 46ee4: 01c00044 movi r7,1 46ee8: 30800117 ldw r2,4(r6) 46eec: 19400044 addi r5,r3,1 46ef0: 294b883a add r5,r5,r5 46ef4: 1807d0ba srai r3,r3,2 46ef8: 294b883a add r5,r5,r5 46efc: 294b883a add r5,r5,r5 46f00: 298b883a add r5,r5,r6 46f04: 38c6983a sll r3,r7,r3 46f08: 29c00017 ldw r7,0(r5) 46f0c: 2a7ffe04 addi r9,r5,-8 46f10: 1886b03a or r3,r3,r2 46f14: 82400315 stw r9,12(r16) 46f18: 81c00215 stw r7,8(r16) 46f1c: 30c00115 stw r3,4(r6) 46f20: 2c000015 stw r16,0(r5) 46f24: 3c000315 stw r16,12(r7) 46f28: 2005d0ba srai r2,r4,2 46f2c: 01400044 movi r5,1 46f30: 288a983a sll r5,r5,r2 46f34: 19406f36 bltu r3,r5,470f4 <_malloc_r+0x324> 46f38: 28c4703a and r2,r5,r3 46f3c: 10000a1e bne r2,zero,46f68 <_malloc_r+0x198> 46f40: 00bfff04 movi r2,-4 46f44: 294b883a add r5,r5,r5 46f48: 2088703a and r4,r4,r2 46f4c: 28c4703a and r2,r5,r3 46f50: 21000104 addi r4,r4,4 46f54: 1000041e bne r2,zero,46f68 <_malloc_r+0x198> 46f58: 294b883a add r5,r5,r5 46f5c: 28c4703a and r2,r5,r3 46f60: 21000104 addi r4,r4,4 46f64: 103ffc26 beq r2,zero,46f58 <__alt_data_end+0xfffd4f58> 46f68: 02bfff04 movi r10,-4 46f6c: 024003c4 movi r9,15 46f70: 21800044 addi r6,r4,1 46f74: 318d883a add r6,r6,r6 46f78: 318d883a add r6,r6,r6 46f7c: 318d883a add r6,r6,r6 46f80: 998d883a add r6,r19,r6 46f84: 333ffe04 addi r12,r6,-8 46f88: 2017883a mov r11,r4 46f8c: 31800104 addi r6,r6,4 46f90: 34000017 ldw r16,0(r6) 46f94: 31fffd04 addi r7,r6,-12 46f98: 81c0041e bne r16,r7,46fac <_malloc_r+0x1dc> 46f9c: 0000fb06 br 4738c <_malloc_r+0x5bc> 46fa0: 1801030e bge r3,zero,473b0 <_malloc_r+0x5e0> 46fa4: 84000317 ldw r16,12(r16) 46fa8: 81c0f826 beq r16,r7,4738c <_malloc_r+0x5bc> 46fac: 80800117 ldw r2,4(r16) 46fb0: 1284703a and r2,r2,r10 46fb4: 1447c83a sub r3,r2,r17 46fb8: 48fff90e bge r9,r3,46fa0 <__alt_data_end+0xfffd4fa0> 46fbc: 80800317 ldw r2,12(r16) 46fc0: 81000217 ldw r4,8(r16) 46fc4: 89400054 ori r5,r17,1 46fc8: 81400115 stw r5,4(r16) 46fcc: 20800315 stw r2,12(r4) 46fd0: 11000215 stw r4,8(r2) 46fd4: 8463883a add r17,r16,r17 46fd8: 9c400515 stw r17,20(r19) 46fdc: 9c400415 stw r17,16(r19) 46fe0: 18800054 ori r2,r3,1 46fe4: 88800115 stw r2,4(r17) 46fe8: 8a000315 stw r8,12(r17) 46fec: 8a000215 stw r8,8(r17) 46ff0: 88e3883a add r17,r17,r3 46ff4: 88c00015 stw r3,0(r17) 46ff8: 9009883a mov r4,r18 46ffc: 004ee180 call 4ee18 <__malloc_unlock> 47000: 80800204 addi r2,r16,8 47004: 00001b06 br 47074 <_malloc_r+0x2a4> 47008: 04400404 movi r17,16 4700c: 89402536 bltu r17,r5,470a4 <_malloc_r+0x2d4> 47010: 004edf40 call 4edf4 <__malloc_lock> 47014: 00800184 movi r2,6 47018: 01000084 movi r4,2 4701c: 04c00174 movhi r19,5 47020: 1085883a add r2,r2,r2 47024: 9ccabe04 addi r19,r19,11000 47028: 1085883a add r2,r2,r2 4702c: 9885883a add r2,r19,r2 47030: 14000117 ldw r16,4(r2) 47034: 10fffe04 addi r3,r2,-8 47038: 80c0d926 beq r16,r3,473a0 <_malloc_r+0x5d0> 4703c: 80c00117 ldw r3,4(r16) 47040: 81000317 ldw r4,12(r16) 47044: 00bfff04 movi r2,-4 47048: 1884703a and r2,r3,r2 4704c: 81400217 ldw r5,8(r16) 47050: 8085883a add r2,r16,r2 47054: 10c00117 ldw r3,4(r2) 47058: 29000315 stw r4,12(r5) 4705c: 21400215 stw r5,8(r4) 47060: 18c00054 ori r3,r3,1 47064: 10c00115 stw r3,4(r2) 47068: 9009883a mov r4,r18 4706c: 004ee180 call 4ee18 <__malloc_unlock> 47070: 80800204 addi r2,r16,8 47074: dfc00a17 ldw ra,40(sp) 47078: df000917 ldw fp,36(sp) 4707c: ddc00817 ldw r23,32(sp) 47080: dd800717 ldw r22,28(sp) 47084: dd400617 ldw r21,24(sp) 47088: dd000517 ldw r20,20(sp) 4708c: dcc00417 ldw r19,16(sp) 47090: dc800317 ldw r18,12(sp) 47094: dc400217 ldw r17,8(sp) 47098: dc000117 ldw r16,4(sp) 4709c: dec00b04 addi sp,sp,44 470a0: f800283a ret 470a4: 00800304 movi r2,12 470a8: 90800015 stw r2,0(r18) 470ac: 0005883a mov r2,zero 470b0: 003ff006 br 47074 <__alt_data_end+0xfffd5074> 470b4: 01002004 movi r4,128 470b8: 02001004 movi r8,64 470bc: 01c00fc4 movi r7,63 470c0: 003f6106 br 46e48 <__alt_data_end+0xfffd4e48> 470c4: 4009883a mov r4,r8 470c8: 003f7506 br 46ea0 <__alt_data_end+0xfffd4ea0> 470cc: 81000317 ldw r4,12(r16) 470d0: 003fde06 br 4704c <__alt_data_end+0xfffd504c> 470d4: 81c5883a add r2,r16,r7 470d8: 11400117 ldw r5,4(r2) 470dc: 9009883a mov r4,r18 470e0: 29400054 ori r5,r5,1 470e4: 11400115 stw r5,4(r2) 470e8: 004ee180 call 4ee18 <__malloc_unlock> 470ec: 80800204 addi r2,r16,8 470f0: 003fe006 br 47074 <__alt_data_end+0xfffd5074> 470f4: 9c000217 ldw r16,8(r19) 470f8: 00bfff04 movi r2,-4 470fc: 85800117 ldw r22,4(r16) 47100: b0ac703a and r22,r22,r2 47104: b4400336 bltu r22,r17,47114 <_malloc_r+0x344> 47108: b445c83a sub r2,r22,r17 4710c: 00c003c4 movi r3,15 47110: 18805d16 blt r3,r2,47288 <_malloc_r+0x4b8> 47114: 05c00174 movhi r23,5 47118: 00800174 movhi r2,5 4711c: 1097aa04 addi r2,r2,24232 47120: bdd08d04 addi r23,r23,16948 47124: 15400017 ldw r21,0(r2) 47128: b8c00017 ldw r3,0(r23) 4712c: 00bfffc4 movi r2,-1 47130: 858d883a add r6,r16,r22 47134: 8d6b883a add r21,r17,r21 47138: 1880ea26 beq r3,r2,474e4 <_malloc_r+0x714> 4713c: ad4403c4 addi r21,r21,4111 47140: 00bc0004 movi r2,-4096 47144: a8aa703a and r21,r21,r2 47148: a80b883a mov r5,r21 4714c: 9009883a mov r4,r18 47150: d9800015 stw r6,0(sp) 47154: 0048db40 call 48db4 <_sbrk_r> 47158: 1029883a mov r20,r2 4715c: 00bfffc4 movi r2,-1 47160: d9800017 ldw r6,0(sp) 47164: a080e826 beq r20,r2,47508 <_malloc_r+0x738> 47168: a180a636 bltu r20,r6,47404 <_malloc_r+0x634> 4716c: 07000174 movhi fp,5 47170: e717b304 addi fp,fp,24268 47174: e0800017 ldw r2,0(fp) 47178: a887883a add r3,r21,r2 4717c: e0c00015 stw r3,0(fp) 47180: 3500e626 beq r6,r20,4751c <_malloc_r+0x74c> 47184: b9000017 ldw r4,0(r23) 47188: 00bfffc4 movi r2,-1 4718c: 2080ee26 beq r4,r2,47548 <_malloc_r+0x778> 47190: a185c83a sub r2,r20,r6 47194: 10c5883a add r2,r2,r3 47198: e0800015 stw r2,0(fp) 4719c: a0c001cc andi r3,r20,7 471a0: 1800bc26 beq r3,zero,47494 <_malloc_r+0x6c4> 471a4: a0e9c83a sub r20,r20,r3 471a8: 00840204 movi r2,4104 471ac: a5000204 addi r20,r20,8 471b0: 10c7c83a sub r3,r2,r3 471b4: a545883a add r2,r20,r21 471b8: 1083ffcc andi r2,r2,4095 471bc: 18abc83a sub r21,r3,r2 471c0: a80b883a mov r5,r21 471c4: 9009883a mov r4,r18 471c8: 0048db40 call 48db4 <_sbrk_r> 471cc: 00ffffc4 movi r3,-1 471d0: 10c0e126 beq r2,r3,47558 <_malloc_r+0x788> 471d4: 1505c83a sub r2,r2,r20 471d8: 1545883a add r2,r2,r21 471dc: 10800054 ori r2,r2,1 471e0: e0c00017 ldw r3,0(fp) 471e4: 9d000215 stw r20,8(r19) 471e8: a0800115 stw r2,4(r20) 471ec: a8c7883a add r3,r21,r3 471f0: e0c00015 stw r3,0(fp) 471f4: 84c00e26 beq r16,r19,47230 <_malloc_r+0x460> 471f8: 018003c4 movi r6,15 471fc: 3580a72e bgeu r6,r22,4749c <_malloc_r+0x6cc> 47200: 81400117 ldw r5,4(r16) 47204: 013ffe04 movi r4,-8 47208: b0bffd04 addi r2,r22,-12 4720c: 1104703a and r2,r2,r4 47210: 2900004c andi r4,r5,1 47214: 2088b03a or r4,r4,r2 47218: 81000115 stw r4,4(r16) 4721c: 01400144 movi r5,5 47220: 8089883a add r4,r16,r2 47224: 21400115 stw r5,4(r4) 47228: 21400215 stw r5,8(r4) 4722c: 3080cd36 bltu r6,r2,47564 <_malloc_r+0x794> 47230: 00800174 movhi r2,5 47234: 1097a904 addi r2,r2,24228 47238: 11000017 ldw r4,0(r2) 4723c: 20c0012e bgeu r4,r3,47244 <_malloc_r+0x474> 47240: 10c00015 stw r3,0(r2) 47244: 00800174 movhi r2,5 47248: 1097a804 addi r2,r2,24224 4724c: 11000017 ldw r4,0(r2) 47250: 9c000217 ldw r16,8(r19) 47254: 20c0012e bgeu r4,r3,4725c <_malloc_r+0x48c> 47258: 10c00015 stw r3,0(r2) 4725c: 80c00117 ldw r3,4(r16) 47260: 00bfff04 movi r2,-4 47264: 1886703a and r3,r3,r2 47268: 1c45c83a sub r2,r3,r17 4726c: 1c400236 bltu r3,r17,47278 <_malloc_r+0x4a8> 47270: 00c003c4 movi r3,15 47274: 18800416 blt r3,r2,47288 <_malloc_r+0x4b8> 47278: 9009883a mov r4,r18 4727c: 004ee180 call 4ee18 <__malloc_unlock> 47280: 0005883a mov r2,zero 47284: 003f7b06 br 47074 <__alt_data_end+0xfffd5074> 47288: 88c00054 ori r3,r17,1 4728c: 80c00115 stw r3,4(r16) 47290: 8463883a add r17,r16,r17 47294: 10800054 ori r2,r2,1 47298: 9c400215 stw r17,8(r19) 4729c: 88800115 stw r2,4(r17) 472a0: 9009883a mov r4,r18 472a4: 004ee180 call 4ee18 <__malloc_unlock> 472a8: 80800204 addi r2,r16,8 472ac: 003f7106 br 47074 <__alt_data_end+0xfffd5074> 472b0: 00c00504 movi r3,20 472b4: 18804a2e bgeu r3,r2,473e0 <_malloc_r+0x610> 472b8: 00c01504 movi r3,84 472bc: 18806e36 bltu r3,r2,47478 <_malloc_r+0x6a8> 472c0: 8804d33a srli r2,r17,12 472c4: 12001bc4 addi r8,r2,111 472c8: 11c01b84 addi r7,r2,110 472cc: 4209883a add r4,r8,r8 472d0: 003edd06 br 46e48 <__alt_data_end+0xfffd4e48> 472d4: 3804d27a srli r2,r7,9 472d8: 00c00104 movi r3,4 472dc: 1880442e bgeu r3,r2,473f0 <_malloc_r+0x620> 472e0: 00c00504 movi r3,20 472e4: 18808136 bltu r3,r2,474ec <_malloc_r+0x71c> 472e8: 11401704 addi r5,r2,92 472ec: 10c016c4 addi r3,r2,91 472f0: 294b883a add r5,r5,r5 472f4: 294b883a add r5,r5,r5 472f8: 294b883a add r5,r5,r5 472fc: 994b883a add r5,r19,r5 47300: 28800017 ldw r2,0(r5) 47304: 01800174 movhi r6,5 47308: 297ffe04 addi r5,r5,-8 4730c: 318abe04 addi r6,r6,11000 47310: 28806526 beq r5,r2,474a8 <_malloc_r+0x6d8> 47314: 01bfff04 movi r6,-4 47318: 10c00117 ldw r3,4(r2) 4731c: 1986703a and r3,r3,r6 47320: 38c0022e bgeu r7,r3,4732c <_malloc_r+0x55c> 47324: 10800217 ldw r2,8(r2) 47328: 28bffb1e bne r5,r2,47318 <__alt_data_end+0xfffd5318> 4732c: 11400317 ldw r5,12(r2) 47330: 98c00117 ldw r3,4(r19) 47334: 81400315 stw r5,12(r16) 47338: 80800215 stw r2,8(r16) 4733c: 2c000215 stw r16,8(r5) 47340: 14000315 stw r16,12(r2) 47344: 003ef806 br 46f28 <__alt_data_end+0xfffd4f28> 47348: 88c00054 ori r3,r17,1 4734c: 80c00115 stw r3,4(r16) 47350: 8463883a add r17,r16,r17 47354: 34400515 stw r17,20(r6) 47358: 34400415 stw r17,16(r6) 4735c: 10c00054 ori r3,r2,1 47360: 8a000315 stw r8,12(r17) 47364: 8a000215 stw r8,8(r17) 47368: 88c00115 stw r3,4(r17) 4736c: 88a3883a add r17,r17,r2 47370: 88800015 stw r2,0(r17) 47374: 9009883a mov r4,r18 47378: 004ee180 call 4ee18 <__malloc_unlock> 4737c: 80800204 addi r2,r16,8 47380: 003f3c06 br 47074 <__alt_data_end+0xfffd5074> 47384: 30c00117 ldw r3,4(r6) 47388: 003ee706 br 46f28 <__alt_data_end+0xfffd4f28> 4738c: 5ac00044 addi r11,r11,1 47390: 588000cc andi r2,r11,3 47394: 31800204 addi r6,r6,8 47398: 103efd1e bne r2,zero,46f90 <__alt_data_end+0xfffd4f90> 4739c: 00002406 br 47430 <_malloc_r+0x660> 473a0: 14000317 ldw r16,12(r2) 473a4: 143f251e bne r2,r16,4703c <__alt_data_end+0xfffd503c> 473a8: 21000084 addi r4,r4,2 473ac: 003ebc06 br 46ea0 <__alt_data_end+0xfffd4ea0> 473b0: 8085883a add r2,r16,r2 473b4: 10c00117 ldw r3,4(r2) 473b8: 81000317 ldw r4,12(r16) 473bc: 81400217 ldw r5,8(r16) 473c0: 18c00054 ori r3,r3,1 473c4: 10c00115 stw r3,4(r2) 473c8: 29000315 stw r4,12(r5) 473cc: 21400215 stw r5,8(r4) 473d0: 9009883a mov r4,r18 473d4: 004ee180 call 4ee18 <__malloc_unlock> 473d8: 80800204 addi r2,r16,8 473dc: 003f2506 br 47074 <__alt_data_end+0xfffd5074> 473e0: 12001704 addi r8,r2,92 473e4: 11c016c4 addi r7,r2,91 473e8: 4209883a add r4,r8,r8 473ec: 003e9606 br 46e48 <__alt_data_end+0xfffd4e48> 473f0: 3804d1ba srli r2,r7,6 473f4: 11400e44 addi r5,r2,57 473f8: 10c00e04 addi r3,r2,56 473fc: 294b883a add r5,r5,r5 47400: 003fbc06 br 472f4 <__alt_data_end+0xfffd52f4> 47404: 84ff5926 beq r16,r19,4716c <__alt_data_end+0xfffd516c> 47408: 00800174 movhi r2,5 4740c: 108abe04 addi r2,r2,11000 47410: 14000217 ldw r16,8(r2) 47414: 00bfff04 movi r2,-4 47418: 80c00117 ldw r3,4(r16) 4741c: 1886703a and r3,r3,r2 47420: 003f9106 br 47268 <__alt_data_end+0xfffd5268> 47424: 60800217 ldw r2,8(r12) 47428: 213fffc4 addi r4,r4,-1 4742c: 1300651e bne r2,r12,475c4 <_malloc_r+0x7f4> 47430: 208000cc andi r2,r4,3 47434: 633ffe04 addi r12,r12,-8 47438: 103ffa1e bne r2,zero,47424 <__alt_data_end+0xfffd5424> 4743c: 98800117 ldw r2,4(r19) 47440: 0146303a nor r3,zero,r5 47444: 1884703a and r2,r3,r2 47448: 98800115 stw r2,4(r19) 4744c: 294b883a add r5,r5,r5 47450: 117f2836 bltu r2,r5,470f4 <__alt_data_end+0xfffd50f4> 47454: 283f2726 beq r5,zero,470f4 <__alt_data_end+0xfffd50f4> 47458: 2886703a and r3,r5,r2 4745c: 5809883a mov r4,r11 47460: 183ec31e bne r3,zero,46f70 <__alt_data_end+0xfffd4f70> 47464: 294b883a add r5,r5,r5 47468: 2886703a and r3,r5,r2 4746c: 21000104 addi r4,r4,4 47470: 183ffc26 beq r3,zero,47464 <__alt_data_end+0xfffd5464> 47474: 003ebe06 br 46f70 <__alt_data_end+0xfffd4f70> 47478: 00c05504 movi r3,340 4747c: 18801236 bltu r3,r2,474c8 <_malloc_r+0x6f8> 47480: 8804d3fa srli r2,r17,15 47484: 12001e04 addi r8,r2,120 47488: 11c01dc4 addi r7,r2,119 4748c: 4209883a add r4,r8,r8 47490: 003e6d06 br 46e48 <__alt_data_end+0xfffd4e48> 47494: 00c40004 movi r3,4096 47498: 003f4606 br 471b4 <__alt_data_end+0xfffd51b4> 4749c: 00800044 movi r2,1 474a0: a0800115 stw r2,4(r20) 474a4: 003f7406 br 47278 <__alt_data_end+0xfffd5278> 474a8: 1805d0ba srai r2,r3,2 474ac: 01c00044 movi r7,1 474b0: 30c00117 ldw r3,4(r6) 474b4: 388e983a sll r7,r7,r2 474b8: 2805883a mov r2,r5 474bc: 38c6b03a or r3,r7,r3 474c0: 30c00115 stw r3,4(r6) 474c4: 003f9b06 br 47334 <__alt_data_end+0xfffd5334> 474c8: 00c15504 movi r3,1364 474cc: 18801a36 bltu r3,r2,47538 <_malloc_r+0x768> 474d0: 8804d4ba srli r2,r17,18 474d4: 12001f44 addi r8,r2,125 474d8: 11c01f04 addi r7,r2,124 474dc: 4209883a add r4,r8,r8 474e0: 003e5906 br 46e48 <__alt_data_end+0xfffd4e48> 474e4: ad400404 addi r21,r21,16 474e8: 003f1706 br 47148 <__alt_data_end+0xfffd5148> 474ec: 00c01504 movi r3,84 474f0: 18802336 bltu r3,r2,47580 <_malloc_r+0x7b0> 474f4: 3804d33a srli r2,r7,12 474f8: 11401bc4 addi r5,r2,111 474fc: 10c01b84 addi r3,r2,110 47500: 294b883a add r5,r5,r5 47504: 003f7b06 br 472f4 <__alt_data_end+0xfffd52f4> 47508: 9c000217 ldw r16,8(r19) 4750c: 00bfff04 movi r2,-4 47510: 80c00117 ldw r3,4(r16) 47514: 1886703a and r3,r3,r2 47518: 003f5306 br 47268 <__alt_data_end+0xfffd5268> 4751c: 3083ffcc andi r2,r6,4095 47520: 103f181e bne r2,zero,47184 <__alt_data_end+0xfffd5184> 47524: 99000217 ldw r4,8(r19) 47528: b545883a add r2,r22,r21 4752c: 10800054 ori r2,r2,1 47530: 20800115 stw r2,4(r4) 47534: 003f3e06 br 47230 <__alt_data_end+0xfffd5230> 47538: 01003f84 movi r4,254 4753c: 02001fc4 movi r8,127 47540: 01c01f84 movi r7,126 47544: 003e4006 br 46e48 <__alt_data_end+0xfffd4e48> 47548: 00800174 movhi r2,5 4754c: 10908d04 addi r2,r2,16948 47550: 15000015 stw r20,0(r2) 47554: 003f1106 br 4719c <__alt_data_end+0xfffd519c> 47558: 00800044 movi r2,1 4755c: 002b883a mov r21,zero 47560: 003f1f06 br 471e0 <__alt_data_end+0xfffd51e0> 47564: 81400204 addi r5,r16,8 47568: 9009883a mov r4,r18 4756c: 00466a00 call 466a0 <_free_r> 47570: 00800174 movhi r2,5 47574: 1097b304 addi r2,r2,24268 47578: 10c00017 ldw r3,0(r2) 4757c: 003f2c06 br 47230 <__alt_data_end+0xfffd5230> 47580: 00c05504 movi r3,340 47584: 18800536 bltu r3,r2,4759c <_malloc_r+0x7cc> 47588: 3804d3fa srli r2,r7,15 4758c: 11401e04 addi r5,r2,120 47590: 10c01dc4 addi r3,r2,119 47594: 294b883a add r5,r5,r5 47598: 003f5606 br 472f4 <__alt_data_end+0xfffd52f4> 4759c: 00c15504 movi r3,1364 475a0: 18800536 bltu r3,r2,475b8 <_malloc_r+0x7e8> 475a4: 3804d4ba srli r2,r7,18 475a8: 11401f44 addi r5,r2,125 475ac: 10c01f04 addi r3,r2,124 475b0: 294b883a add r5,r5,r5 475b4: 003f4f06 br 472f4 <__alt_data_end+0xfffd52f4> 475b8: 01403f84 movi r5,254 475bc: 00c01f84 movi r3,126 475c0: 003f4c06 br 472f4 <__alt_data_end+0xfffd52f4> 475c4: 98800117 ldw r2,4(r19) 475c8: 003fa006 br 4744c <__alt_data_end+0xfffd544c> 475cc: 8808d0fa srli r4,r17,3 475d0: 20800044 addi r2,r4,1 475d4: 1085883a add r2,r2,r2 475d8: 003e9006 br 4701c <__alt_data_end+0xfffd501c> 000475dc : 475dc: 208000cc andi r2,r4,3 475e0: 280f883a mov r7,r5 475e4: 10003426 beq r2,zero,476b8 475e8: 30bfffc4 addi r2,r6,-1 475ec: 30001a26 beq r6,zero,47658 475f0: 20c00003 ldbu r3,0(r4) 475f4: 29803fcc andi r6,r5,255 475f8: 30c0051e bne r6,r3,47610 475fc: 00001806 br 47660 47600: 10001526 beq r2,zero,47658 47604: 20c00003 ldbu r3,0(r4) 47608: 10bfffc4 addi r2,r2,-1 4760c: 30c01426 beq r6,r3,47660 47610: 21000044 addi r4,r4,1 47614: 20c000cc andi r3,r4,3 47618: 183ff91e bne r3,zero,47600 <__alt_data_end+0xfffd5600> 4761c: 020000c4 movi r8,3 47620: 40801136 bltu r8,r2,47668 47624: 10000c26 beq r2,zero,47658 47628: 20c00003 ldbu r3,0(r4) 4762c: 29403fcc andi r5,r5,255 47630: 28c00b26 beq r5,r3,47660 47634: 20c00044 addi r3,r4,1 47638: 39803fcc andi r6,r7,255 4763c: 2089883a add r4,r4,r2 47640: 00000306 br 47650 47644: 18c00044 addi r3,r3,1 47648: 197fffc3 ldbu r5,-1(r3) 4764c: 31400526 beq r6,r5,47664 47650: 1805883a mov r2,r3 47654: 20fffb1e bne r4,r3,47644 <__alt_data_end+0xfffd5644> 47658: 0005883a mov r2,zero 4765c: f800283a ret 47660: 2005883a mov r2,r4 47664: f800283a ret 47668: 28c03fcc andi r3,r5,255 4766c: 1812923a slli r9,r3,8 47670: 02ffbff4 movhi r11,65279 47674: 02a02074 movhi r10,32897 47678: 48d2b03a or r9,r9,r3 4767c: 4806943a slli r3,r9,16 47680: 5affbfc4 addi r11,r11,-257 47684: 52a02004 addi r10,r10,-32640 47688: 48d2b03a or r9,r9,r3 4768c: 20c00017 ldw r3,0(r4) 47690: 48c6f03a xor r3,r9,r3 47694: 1acd883a add r6,r3,r11 47698: 00c6303a nor r3,zero,r3 4769c: 30c6703a and r3,r6,r3 476a0: 1a86703a and r3,r3,r10 476a4: 183fe01e bne r3,zero,47628 <__alt_data_end+0xfffd5628> 476a8: 10bfff04 addi r2,r2,-4 476ac: 21000104 addi r4,r4,4 476b0: 40bff636 bltu r8,r2,4768c <__alt_data_end+0xfffd568c> 476b4: 003fdb06 br 47624 <__alt_data_end+0xfffd5624> 476b8: 3005883a mov r2,r6 476bc: 003fd706 br 4761c <__alt_data_end+0xfffd561c> 000476c0 : 476c0: defffd04 addi sp,sp,-12 476c4: dfc00215 stw ra,8(sp) 476c8: dc400115 stw r17,4(sp) 476cc: dc000015 stw r16,0(sp) 476d0: 00c003c4 movi r3,15 476d4: 2005883a mov r2,r4 476d8: 1980452e bgeu r3,r6,477f0 476dc: 2906b03a or r3,r5,r4 476e0: 18c000cc andi r3,r3,3 476e4: 1800441e bne r3,zero,477f8 476e8: 347ffc04 addi r17,r6,-16 476ec: 8822d13a srli r17,r17,4 476f0: 28c00104 addi r3,r5,4 476f4: 23400104 addi r13,r4,4 476f8: 8820913a slli r16,r17,4 476fc: 2b000204 addi r12,r5,8 47700: 22c00204 addi r11,r4,8 47704: 84000504 addi r16,r16,20 47708: 2a800304 addi r10,r5,12 4770c: 22400304 addi r9,r4,12 47710: 2c21883a add r16,r5,r16 47714: 2811883a mov r8,r5 47718: 200f883a mov r7,r4 4771c: 41000017 ldw r4,0(r8) 47720: 1fc00017 ldw ra,0(r3) 47724: 63c00017 ldw r15,0(r12) 47728: 39000015 stw r4,0(r7) 4772c: 53800017 ldw r14,0(r10) 47730: 6fc00015 stw ra,0(r13) 47734: 5bc00015 stw r15,0(r11) 47738: 4b800015 stw r14,0(r9) 4773c: 18c00404 addi r3,r3,16 47740: 39c00404 addi r7,r7,16 47744: 42000404 addi r8,r8,16 47748: 6b400404 addi r13,r13,16 4774c: 63000404 addi r12,r12,16 47750: 5ac00404 addi r11,r11,16 47754: 52800404 addi r10,r10,16 47758: 4a400404 addi r9,r9,16 4775c: 1c3fef1e bne r3,r16,4771c <__alt_data_end+0xfffd571c> 47760: 89c00044 addi r7,r17,1 47764: 380e913a slli r7,r7,4 47768: 310003cc andi r4,r6,15 4776c: 02c000c4 movi r11,3 47770: 11c7883a add r3,r2,r7 47774: 29cb883a add r5,r5,r7 47778: 5900212e bgeu r11,r4,47800 4777c: 1813883a mov r9,r3 47780: 2811883a mov r8,r5 47784: 200f883a mov r7,r4 47788: 42800017 ldw r10,0(r8) 4778c: 4a400104 addi r9,r9,4 47790: 39ffff04 addi r7,r7,-4 47794: 4abfff15 stw r10,-4(r9) 47798: 42000104 addi r8,r8,4 4779c: 59fffa36 bltu r11,r7,47788 <__alt_data_end+0xfffd5788> 477a0: 213fff04 addi r4,r4,-4 477a4: 2008d0ba srli r4,r4,2 477a8: 318000cc andi r6,r6,3 477ac: 21000044 addi r4,r4,1 477b0: 2109883a add r4,r4,r4 477b4: 2109883a add r4,r4,r4 477b8: 1907883a add r3,r3,r4 477bc: 290b883a add r5,r5,r4 477c0: 30000626 beq r6,zero,477dc 477c4: 198d883a add r6,r3,r6 477c8: 29c00003 ldbu r7,0(r5) 477cc: 18c00044 addi r3,r3,1 477d0: 29400044 addi r5,r5,1 477d4: 19ffffc5 stb r7,-1(r3) 477d8: 19bffb1e bne r3,r6,477c8 <__alt_data_end+0xfffd57c8> 477dc: dfc00217 ldw ra,8(sp) 477e0: dc400117 ldw r17,4(sp) 477e4: dc000017 ldw r16,0(sp) 477e8: dec00304 addi sp,sp,12 477ec: f800283a ret 477f0: 2007883a mov r3,r4 477f4: 003ff206 br 477c0 <__alt_data_end+0xfffd57c0> 477f8: 2007883a mov r3,r4 477fc: 003ff106 br 477c4 <__alt_data_end+0xfffd57c4> 47800: 200d883a mov r6,r4 47804: 003fee06 br 477c0 <__alt_data_end+0xfffd57c0> 00047808 : 47808: 20c000cc andi r3,r4,3 4780c: 2005883a mov r2,r4 47810: 18004426 beq r3,zero,47924 47814: 31ffffc4 addi r7,r6,-1 47818: 30004026 beq r6,zero,4791c 4781c: 2813883a mov r9,r5 47820: 200d883a mov r6,r4 47824: 2007883a mov r3,r4 47828: 00000406 br 4783c 4782c: 3a3fffc4 addi r8,r7,-1 47830: 31800044 addi r6,r6,1 47834: 38003926 beq r7,zero,4791c 47838: 400f883a mov r7,r8 4783c: 18c00044 addi r3,r3,1 47840: 32400005 stb r9,0(r6) 47844: 1a0000cc andi r8,r3,3 47848: 403ff81e bne r8,zero,4782c <__alt_data_end+0xfffd582c> 4784c: 010000c4 movi r4,3 47850: 21c02d2e bgeu r4,r7,47908 47854: 29003fcc andi r4,r5,255 47858: 200c923a slli r6,r4,8 4785c: 3108b03a or r4,r6,r4 47860: 200c943a slli r6,r4,16 47864: 218cb03a or r6,r4,r6 47868: 010003c4 movi r4,15 4786c: 21c0182e bgeu r4,r7,478d0 47870: 3b3ffc04 addi r12,r7,-16 47874: 6018d13a srli r12,r12,4 47878: 1a000104 addi r8,r3,4 4787c: 1ac00204 addi r11,r3,8 47880: 6008913a slli r4,r12,4 47884: 1a800304 addi r10,r3,12 47888: 1813883a mov r9,r3 4788c: 21000504 addi r4,r4,20 47890: 1909883a add r4,r3,r4 47894: 49800015 stw r6,0(r9) 47898: 41800015 stw r6,0(r8) 4789c: 59800015 stw r6,0(r11) 478a0: 51800015 stw r6,0(r10) 478a4: 42000404 addi r8,r8,16 478a8: 4a400404 addi r9,r9,16 478ac: 5ac00404 addi r11,r11,16 478b0: 52800404 addi r10,r10,16 478b4: 413ff71e bne r8,r4,47894 <__alt_data_end+0xfffd5894> 478b8: 63000044 addi r12,r12,1 478bc: 6018913a slli r12,r12,4 478c0: 39c003cc andi r7,r7,15 478c4: 010000c4 movi r4,3 478c8: 1b07883a add r3,r3,r12 478cc: 21c00e2e bgeu r4,r7,47908 478d0: 1813883a mov r9,r3 478d4: 3811883a mov r8,r7 478d8: 010000c4 movi r4,3 478dc: 49800015 stw r6,0(r9) 478e0: 423fff04 addi r8,r8,-4 478e4: 4a400104 addi r9,r9,4 478e8: 223ffc36 bltu r4,r8,478dc <__alt_data_end+0xfffd58dc> 478ec: 393fff04 addi r4,r7,-4 478f0: 2008d0ba srli r4,r4,2 478f4: 39c000cc andi r7,r7,3 478f8: 21000044 addi r4,r4,1 478fc: 2109883a add r4,r4,r4 47900: 2109883a add r4,r4,r4 47904: 1907883a add r3,r3,r4 47908: 38000526 beq r7,zero,47920 4790c: 19cf883a add r7,r3,r7 47910: 19400005 stb r5,0(r3) 47914: 18c00044 addi r3,r3,1 47918: 38fffd1e bne r7,r3,47910 <__alt_data_end+0xfffd5910> 4791c: f800283a ret 47920: f800283a ret 47924: 2007883a mov r3,r4 47928: 300f883a mov r7,r6 4792c: 003fc706 br 4784c <__alt_data_end+0xfffd584c> 00047930 <_Balloc>: 47930: 20801317 ldw r2,76(r4) 47934: defffc04 addi sp,sp,-16 47938: dc400115 stw r17,4(sp) 4793c: dc000015 stw r16,0(sp) 47940: dfc00315 stw ra,12(sp) 47944: dc800215 stw r18,8(sp) 47948: 2023883a mov r17,r4 4794c: 2821883a mov r16,r5 47950: 10000f26 beq r2,zero,47990 <_Balloc+0x60> 47954: 8407883a add r3,r16,r16 47958: 18c7883a add r3,r3,r3 4795c: 10c7883a add r3,r2,r3 47960: 18800017 ldw r2,0(r3) 47964: 10001126 beq r2,zero,479ac <_Balloc+0x7c> 47968: 11000017 ldw r4,0(r2) 4796c: 19000015 stw r4,0(r3) 47970: 10000415 stw zero,16(r2) 47974: 10000315 stw zero,12(r2) 47978: dfc00317 ldw ra,12(sp) 4797c: dc800217 ldw r18,8(sp) 47980: dc400117 ldw r17,4(sp) 47984: dc000017 ldw r16,0(sp) 47988: dec00404 addi sp,sp,16 4798c: f800283a ret 47990: 01800844 movi r6,33 47994: 01400104 movi r5,4 47998: 004a9bc0 call 4a9bc <_calloc_r> 4799c: 88801315 stw r2,76(r17) 479a0: 103fec1e bne r2,zero,47954 <__alt_data_end+0xfffd5954> 479a4: 0005883a mov r2,zero 479a8: 003ff306 br 47978 <__alt_data_end+0xfffd5978> 479ac: 01400044 movi r5,1 479b0: 2c24983a sll r18,r5,r16 479b4: 8809883a mov r4,r17 479b8: 91800144 addi r6,r18,5 479bc: 318d883a add r6,r6,r6 479c0: 318d883a add r6,r6,r6 479c4: 004a9bc0 call 4a9bc <_calloc_r> 479c8: 103ff626 beq r2,zero,479a4 <__alt_data_end+0xfffd59a4> 479cc: 14000115 stw r16,4(r2) 479d0: 14800215 stw r18,8(r2) 479d4: 003fe606 br 47970 <__alt_data_end+0xfffd5970> 000479d8 <_Bfree>: 479d8: 28000826 beq r5,zero,479fc <_Bfree+0x24> 479dc: 28c00117 ldw r3,4(r5) 479e0: 20801317 ldw r2,76(r4) 479e4: 18c7883a add r3,r3,r3 479e8: 18c7883a add r3,r3,r3 479ec: 10c5883a add r2,r2,r3 479f0: 10c00017 ldw r3,0(r2) 479f4: 28c00015 stw r3,0(r5) 479f8: 11400015 stw r5,0(r2) 479fc: f800283a ret 00047a00 <__multadd>: 47a00: defff704 addi sp,sp,-36 47a04: dc800215 stw r18,8(sp) 47a08: 2c800417 ldw r18,16(r5) 47a0c: dd800615 stw r22,24(sp) 47a10: dd400515 stw r21,20(sp) 47a14: dd000415 stw r20,16(sp) 47a18: dcc00315 stw r19,12(sp) 47a1c: dc400115 stw r17,4(sp) 47a20: dc000015 stw r16,0(sp) 47a24: dfc00815 stw ra,32(sp) 47a28: ddc00715 stw r23,28(sp) 47a2c: 2827883a mov r19,r5 47a30: 2029883a mov r20,r4 47a34: 3023883a mov r17,r6 47a38: 3821883a mov r16,r7 47a3c: 2d400504 addi r21,r5,20 47a40: 002d883a mov r22,zero 47a44: adc00017 ldw r23,0(r21) 47a48: 880b883a mov r5,r17 47a4c: ad400104 addi r21,r21,4 47a50: b93fffcc andi r4,r23,65535 47a54: 004c9f80 call 4c9f8 <__mulsi3> 47a58: b808d43a srli r4,r23,16 47a5c: 880b883a mov r5,r17 47a60: 1421883a add r16,r2,r16 47a64: 004c9f80 call 4c9f8 <__mulsi3> 47a68: 800ed43a srli r7,r16,16 47a6c: 80ffffcc andi r3,r16,65535 47a70: b5800044 addi r22,r22,1 47a74: 11c5883a add r2,r2,r7 47a78: 100e943a slli r7,r2,16 47a7c: 1020d43a srli r16,r2,16 47a80: 38c7883a add r3,r7,r3 47a84: a8ffff15 stw r3,-4(r21) 47a88: b4bfee16 blt r22,r18,47a44 <__alt_data_end+0xfffd5a44> 47a8c: 80000926 beq r16,zero,47ab4 <__multadd+0xb4> 47a90: 98800217 ldw r2,8(r19) 47a94: 9080130e bge r18,r2,47ae4 <__multadd+0xe4> 47a98: 90800144 addi r2,r18,5 47a9c: 1085883a add r2,r2,r2 47aa0: 1085883a add r2,r2,r2 47aa4: 9885883a add r2,r19,r2 47aa8: 14000015 stw r16,0(r2) 47aac: 94800044 addi r18,r18,1 47ab0: 9c800415 stw r18,16(r19) 47ab4: 9805883a mov r2,r19 47ab8: dfc00817 ldw ra,32(sp) 47abc: ddc00717 ldw r23,28(sp) 47ac0: dd800617 ldw r22,24(sp) 47ac4: dd400517 ldw r21,20(sp) 47ac8: dd000417 ldw r20,16(sp) 47acc: dcc00317 ldw r19,12(sp) 47ad0: dc800217 ldw r18,8(sp) 47ad4: dc400117 ldw r17,4(sp) 47ad8: dc000017 ldw r16,0(sp) 47adc: dec00904 addi sp,sp,36 47ae0: f800283a ret 47ae4: 99400117 ldw r5,4(r19) 47ae8: a009883a mov r4,r20 47aec: 29400044 addi r5,r5,1 47af0: 00479300 call 47930 <_Balloc> 47af4: 99800417 ldw r6,16(r19) 47af8: 99400304 addi r5,r19,12 47afc: 11000304 addi r4,r2,12 47b00: 31800084 addi r6,r6,2 47b04: 318d883a add r6,r6,r6 47b08: 318d883a add r6,r6,r6 47b0c: 1023883a mov r17,r2 47b10: 00476c00 call 476c0 47b14: 98000a26 beq r19,zero,47b40 <__multadd+0x140> 47b18: 98c00117 ldw r3,4(r19) 47b1c: a0801317 ldw r2,76(r20) 47b20: 18c7883a add r3,r3,r3 47b24: 18c7883a add r3,r3,r3 47b28: 10c5883a add r2,r2,r3 47b2c: 10c00017 ldw r3,0(r2) 47b30: 98c00015 stw r3,0(r19) 47b34: 14c00015 stw r19,0(r2) 47b38: 8827883a mov r19,r17 47b3c: 003fd606 br 47a98 <__alt_data_end+0xfffd5a98> 47b40: 8827883a mov r19,r17 47b44: 003fd406 br 47a98 <__alt_data_end+0xfffd5a98> 00047b48 <__s2b>: 47b48: defff904 addi sp,sp,-28 47b4c: dc400115 stw r17,4(sp) 47b50: dc000015 stw r16,0(sp) 47b54: 2023883a mov r17,r4 47b58: 2821883a mov r16,r5 47b5c: 39000204 addi r4,r7,8 47b60: 01400244 movi r5,9 47b64: dcc00315 stw r19,12(sp) 47b68: dc800215 stw r18,8(sp) 47b6c: dfc00615 stw ra,24(sp) 47b70: dd400515 stw r21,20(sp) 47b74: dd000415 stw r20,16(sp) 47b78: 3825883a mov r18,r7 47b7c: 3027883a mov r19,r6 47b80: 004c8440 call 4c844 <__divsi3> 47b84: 00c00044 movi r3,1 47b88: 000b883a mov r5,zero 47b8c: 1880030e bge r3,r2,47b9c <__s2b+0x54> 47b90: 18c7883a add r3,r3,r3 47b94: 29400044 addi r5,r5,1 47b98: 18bffd16 blt r3,r2,47b90 <__alt_data_end+0xfffd5b90> 47b9c: 8809883a mov r4,r17 47ba0: 00479300 call 47930 <_Balloc> 47ba4: d8c00717 ldw r3,28(sp) 47ba8: 10c00515 stw r3,20(r2) 47bac: 00c00044 movi r3,1 47bb0: 10c00415 stw r3,16(r2) 47bb4: 00c00244 movi r3,9 47bb8: 1cc0210e bge r3,r19,47c40 <__s2b+0xf8> 47bbc: 80eb883a add r21,r16,r3 47bc0: a829883a mov r20,r21 47bc4: 84e1883a add r16,r16,r19 47bc8: a1c00007 ldb r7,0(r20) 47bcc: 01800284 movi r6,10 47bd0: a5000044 addi r20,r20,1 47bd4: 100b883a mov r5,r2 47bd8: 39fff404 addi r7,r7,-48 47bdc: 8809883a mov r4,r17 47be0: 0047a000 call 47a00 <__multadd> 47be4: a43ff81e bne r20,r16,47bc8 <__alt_data_end+0xfffd5bc8> 47be8: ace1883a add r16,r21,r19 47bec: 843ffe04 addi r16,r16,-8 47bf0: 9c800a0e bge r19,r18,47c1c <__s2b+0xd4> 47bf4: 94e5c83a sub r18,r18,r19 47bf8: 84a5883a add r18,r16,r18 47bfc: 81c00007 ldb r7,0(r16) 47c00: 01800284 movi r6,10 47c04: 84000044 addi r16,r16,1 47c08: 100b883a mov r5,r2 47c0c: 39fff404 addi r7,r7,-48 47c10: 8809883a mov r4,r17 47c14: 0047a000 call 47a00 <__multadd> 47c18: 84bff81e bne r16,r18,47bfc <__alt_data_end+0xfffd5bfc> 47c1c: dfc00617 ldw ra,24(sp) 47c20: dd400517 ldw r21,20(sp) 47c24: dd000417 ldw r20,16(sp) 47c28: dcc00317 ldw r19,12(sp) 47c2c: dc800217 ldw r18,8(sp) 47c30: dc400117 ldw r17,4(sp) 47c34: dc000017 ldw r16,0(sp) 47c38: dec00704 addi sp,sp,28 47c3c: f800283a ret 47c40: 84000284 addi r16,r16,10 47c44: 1827883a mov r19,r3 47c48: 003fe906 br 47bf0 <__alt_data_end+0xfffd5bf0> 00047c4c <__hi0bits>: 47c4c: 20bfffec andhi r2,r4,65535 47c50: 1000141e bne r2,zero,47ca4 <__hi0bits+0x58> 47c54: 2008943a slli r4,r4,16 47c58: 00800404 movi r2,16 47c5c: 20ffc02c andhi r3,r4,65280 47c60: 1800021e bne r3,zero,47c6c <__hi0bits+0x20> 47c64: 2008923a slli r4,r4,8 47c68: 10800204 addi r2,r2,8 47c6c: 20fc002c andhi r3,r4,61440 47c70: 1800021e bne r3,zero,47c7c <__hi0bits+0x30> 47c74: 2008913a slli r4,r4,4 47c78: 10800104 addi r2,r2,4 47c7c: 20f0002c andhi r3,r4,49152 47c80: 1800031e bne r3,zero,47c90 <__hi0bits+0x44> 47c84: 2109883a add r4,r4,r4 47c88: 10800084 addi r2,r2,2 47c8c: 2109883a add r4,r4,r4 47c90: 20000316 blt r4,zero,47ca0 <__hi0bits+0x54> 47c94: 2110002c andhi r4,r4,16384 47c98: 2000041e bne r4,zero,47cac <__hi0bits+0x60> 47c9c: 00800804 movi r2,32 47ca0: f800283a ret 47ca4: 0005883a mov r2,zero 47ca8: 003fec06 br 47c5c <__alt_data_end+0xfffd5c5c> 47cac: 10800044 addi r2,r2,1 47cb0: f800283a ret 00047cb4 <__lo0bits>: 47cb4: 20c00017 ldw r3,0(r4) 47cb8: 188001cc andi r2,r3,7 47cbc: 10000826 beq r2,zero,47ce0 <__lo0bits+0x2c> 47cc0: 1880004c andi r2,r3,1 47cc4: 1000211e bne r2,zero,47d4c <__lo0bits+0x98> 47cc8: 1880008c andi r2,r3,2 47ccc: 1000211e bne r2,zero,47d54 <__lo0bits+0xa0> 47cd0: 1806d0ba srli r3,r3,2 47cd4: 00800084 movi r2,2 47cd8: 20c00015 stw r3,0(r4) 47cdc: f800283a ret 47ce0: 18bfffcc andi r2,r3,65535 47ce4: 10001326 beq r2,zero,47d34 <__lo0bits+0x80> 47ce8: 0005883a mov r2,zero 47cec: 19403fcc andi r5,r3,255 47cf0: 2800021e bne r5,zero,47cfc <__lo0bits+0x48> 47cf4: 1806d23a srli r3,r3,8 47cf8: 10800204 addi r2,r2,8 47cfc: 194003cc andi r5,r3,15 47d00: 2800021e bne r5,zero,47d0c <__lo0bits+0x58> 47d04: 1806d13a srli r3,r3,4 47d08: 10800104 addi r2,r2,4 47d0c: 194000cc andi r5,r3,3 47d10: 2800021e bne r5,zero,47d1c <__lo0bits+0x68> 47d14: 1806d0ba srli r3,r3,2 47d18: 10800084 addi r2,r2,2 47d1c: 1940004c andi r5,r3,1 47d20: 2800081e bne r5,zero,47d44 <__lo0bits+0x90> 47d24: 1806d07a srli r3,r3,1 47d28: 1800051e bne r3,zero,47d40 <__lo0bits+0x8c> 47d2c: 00800804 movi r2,32 47d30: f800283a ret 47d34: 1806d43a srli r3,r3,16 47d38: 00800404 movi r2,16 47d3c: 003feb06 br 47cec <__alt_data_end+0xfffd5cec> 47d40: 10800044 addi r2,r2,1 47d44: 20c00015 stw r3,0(r4) 47d48: f800283a ret 47d4c: 0005883a mov r2,zero 47d50: f800283a ret 47d54: 1806d07a srli r3,r3,1 47d58: 00800044 movi r2,1 47d5c: 20c00015 stw r3,0(r4) 47d60: f800283a ret 00047d64 <__i2b>: 47d64: defffd04 addi sp,sp,-12 47d68: dc000015 stw r16,0(sp) 47d6c: 04000044 movi r16,1 47d70: dc400115 stw r17,4(sp) 47d74: 2823883a mov r17,r5 47d78: 800b883a mov r5,r16 47d7c: dfc00215 stw ra,8(sp) 47d80: 00479300 call 47930 <_Balloc> 47d84: 14400515 stw r17,20(r2) 47d88: 14000415 stw r16,16(r2) 47d8c: dfc00217 ldw ra,8(sp) 47d90: dc400117 ldw r17,4(sp) 47d94: dc000017 ldw r16,0(sp) 47d98: dec00304 addi sp,sp,12 47d9c: f800283a ret 00047da0 <__multiply>: 47da0: deffef04 addi sp,sp,-68 47da4: dc400815 stw r17,32(sp) 47da8: dc000715 stw r16,28(sp) 47dac: 34400417 ldw r17,16(r6) 47db0: 2c000417 ldw r16,16(r5) 47db4: dd800d15 stw r22,52(sp) 47db8: dc800915 stw r18,36(sp) 47dbc: dfc01015 stw ra,64(sp) 47dc0: df000f15 stw fp,60(sp) 47dc4: ddc00e15 stw r23,56(sp) 47dc8: dd400c15 stw r21,48(sp) 47dcc: dd000b15 stw r20,44(sp) 47dd0: dcc00a15 stw r19,40(sp) 47dd4: 2825883a mov r18,r5 47dd8: 302d883a mov r22,r6 47ddc: 8440050e bge r16,r17,47df4 <__multiply+0x54> 47de0: 8007883a mov r3,r16 47de4: 3025883a mov r18,r6 47de8: 8821883a mov r16,r17 47dec: 282d883a mov r22,r5 47df0: 1823883a mov r17,r3 47df4: 90800217 ldw r2,8(r18) 47df8: 8447883a add r3,r16,r17 47dfc: d8c00215 stw r3,8(sp) 47e00: 91400117 ldw r5,4(r18) 47e04: 10c0010e bge r2,r3,47e0c <__multiply+0x6c> 47e08: 29400044 addi r5,r5,1 47e0c: 00479300 call 47930 <_Balloc> 47e10: d8c00217 ldw r3,8(sp) 47e14: d8800615 stw r2,24(sp) 47e18: 18eb883a add r21,r3,r3 47e1c: ad6b883a add r21,r21,r21 47e20: 10c00504 addi r3,r2,20 47e24: 1d6b883a add r21,r3,r21 47e28: d8c00115 stw r3,4(sp) 47e2c: dd400315 stw r21,12(sp) 47e30: 1805883a mov r2,r3 47e34: 1d40042e bgeu r3,r21,47e48 <__multiply+0xa8> 47e38: d8c00317 ldw r3,12(sp) 47e3c: 10000015 stw zero,0(r2) 47e40: 10800104 addi r2,r2,4 47e44: 10fffc36 bltu r2,r3,47e38 <__alt_data_end+0xfffd5e38> 47e48: 8c63883a add r17,r17,r17 47e4c: b5800504 addi r22,r22,20 47e50: 8c63883a add r17,r17,r17 47e54: 94800504 addi r18,r18,20 47e58: 8421883a add r16,r16,r16 47e5c: b463883a add r17,r22,r17 47e60: 8421883a add r16,r16,r16 47e64: dd800015 stw r22,0(sp) 47e68: dc800415 stw r18,16(sp) 47e6c: dc400515 stw r17,20(sp) 47e70: 9429883a add r20,r18,r16 47e74: b4404f2e bgeu r22,r17,47fb4 <__multiply+0x214> 47e78: d8c00017 ldw r3,0(sp) 47e7c: 1c800017 ldw r18,0(r3) 47e80: 947fffcc andi r17,r18,65535 47e84: 88001e26 beq r17,zero,47f00 <__multiply+0x160> 47e88: dd800117 ldw r22,4(sp) 47e8c: dd400417 ldw r21,16(sp) 47e90: 0027883a mov r19,zero 47e94: ac800017 ldw r18,0(r21) 47e98: b4000017 ldw r16,0(r22) 47e9c: 880b883a mov r5,r17 47ea0: 913fffcc andi r4,r18,65535 47ea4: 004c9f80 call 4c9f8 <__mulsi3> 47ea8: 9008d43a srli r4,r18,16 47eac: 84bfffcc andi r18,r16,65535 47eb0: 1485883a add r2,r2,r18 47eb4: 14e5883a add r18,r2,r19 47eb8: 8020d43a srli r16,r16,16 47ebc: 9026d43a srli r19,r18,16 47ec0: 880b883a mov r5,r17 47ec4: 004c9f80 call 4c9f8 <__mulsi3> 47ec8: 1405883a add r2,r2,r16 47ecc: 14e1883a add r16,r2,r19 47ed0: 90ffffcc andi r3,r18,65535 47ed4: 8024943a slli r18,r16,16 47ed8: ad400104 addi r21,r21,4 47edc: b005883a mov r2,r22 47ee0: 90c6b03a or r3,r18,r3 47ee4: b0c00015 stw r3,0(r22) 47ee8: 8026d43a srli r19,r16,16 47eec: b5800104 addi r22,r22,4 47ef0: ad3fe836 bltu r21,r20,47e94 <__alt_data_end+0xfffd5e94> 47ef4: d8c00017 ldw r3,0(sp) 47ef8: 14c00115 stw r19,4(r2) 47efc: 1c800017 ldw r18,0(r3) 47f00: 9024d43a srli r18,r18,16 47f04: 90002226 beq r18,zero,47f90 <__multiply+0x1f0> 47f08: d8c00117 ldw r3,4(sp) 47f0c: dd800417 ldw r22,16(sp) 47f10: 002f883a mov r23,zero 47f14: 1f000017 ldw fp,0(r3) 47f18: 1823883a mov r17,r3 47f1c: 182b883a mov r21,r3 47f20: e021883a mov r16,fp 47f24: 00000106 br 47f2c <__multiply+0x18c> 47f28: 982b883a mov r21,r19 47f2c: b100000b ldhu r4,0(r22) 47f30: 8020d43a srli r16,r16,16 47f34: 900b883a mov r5,r18 47f38: 004c9f80 call 4c9f8 <__mulsi3> 47f3c: 1405883a add r2,r2,r16 47f40: 15ef883a add r23,r2,r23 47f44: b804943a slli r2,r23,16 47f48: e0ffffcc andi r3,fp,65535 47f4c: 8c400104 addi r17,r17,4 47f50: 10c6b03a or r3,r2,r3 47f54: 88ffff15 stw r3,-4(r17) 47f58: b5800104 addi r22,r22,4 47f5c: b13fff17 ldw r4,-4(r22) 47f60: acc00104 addi r19,r21,4 47f64: 900b883a mov r5,r18 47f68: 2008d43a srli r4,r4,16 47f6c: 9c000017 ldw r16,0(r19) 47f70: 004c9f80 call 4c9f8 <__mulsi3> 47f74: b806d43a srli r3,r23,16 47f78: 813fffcc andi r4,r16,65535 47f7c: 1105883a add r2,r2,r4 47f80: 10f9883a add fp,r2,r3 47f84: e02ed43a srli r23,fp,16 47f88: b53fe736 bltu r22,r20,47f28 <__alt_data_end+0xfffd5f28> 47f8c: af000115 stw fp,4(r21) 47f90: d8c00017 ldw r3,0(sp) 47f94: d9000517 ldw r4,20(sp) 47f98: 18c00104 addi r3,r3,4 47f9c: d8c00015 stw r3,0(sp) 47fa0: d8c00117 ldw r3,4(sp) 47fa4: 18c00104 addi r3,r3,4 47fa8: d8c00115 stw r3,4(sp) 47fac: d8c00017 ldw r3,0(sp) 47fb0: 193fb136 bltu r3,r4,47e78 <__alt_data_end+0xfffd5e78> 47fb4: d8c00217 ldw r3,8(sp) 47fb8: 00c00c0e bge zero,r3,47fec <__multiply+0x24c> 47fbc: d8c00317 ldw r3,12(sp) 47fc0: 18bfff17 ldw r2,-4(r3) 47fc4: 1d7fff04 addi r21,r3,-4 47fc8: 10000326 beq r2,zero,47fd8 <__multiply+0x238> 47fcc: 00000706 br 47fec <__multiply+0x24c> 47fd0: a8800017 ldw r2,0(r21) 47fd4: 1000051e bne r2,zero,47fec <__multiply+0x24c> 47fd8: d8c00217 ldw r3,8(sp) 47fdc: ad7fff04 addi r21,r21,-4 47fe0: 18ffffc4 addi r3,r3,-1 47fe4: d8c00215 stw r3,8(sp) 47fe8: 183ff91e bne r3,zero,47fd0 <__alt_data_end+0xfffd5fd0> 47fec: d8c00617 ldw r3,24(sp) 47ff0: d9000217 ldw r4,8(sp) 47ff4: 1805883a mov r2,r3 47ff8: 19000415 stw r4,16(r3) 47ffc: dfc01017 ldw ra,64(sp) 48000: df000f17 ldw fp,60(sp) 48004: ddc00e17 ldw r23,56(sp) 48008: dd800d17 ldw r22,52(sp) 4800c: dd400c17 ldw r21,48(sp) 48010: dd000b17 ldw r20,44(sp) 48014: dcc00a17 ldw r19,40(sp) 48018: dc800917 ldw r18,36(sp) 4801c: dc400817 ldw r17,32(sp) 48020: dc000717 ldw r16,28(sp) 48024: dec01104 addi sp,sp,68 48028: f800283a ret 0004802c <__pow5mult>: 4802c: defffa04 addi sp,sp,-24 48030: dcc00315 stw r19,12(sp) 48034: dc000015 stw r16,0(sp) 48038: dfc00515 stw ra,20(sp) 4803c: dd000415 stw r20,16(sp) 48040: dc800215 stw r18,8(sp) 48044: dc400115 stw r17,4(sp) 48048: 308000cc andi r2,r6,3 4804c: 3021883a mov r16,r6 48050: 2027883a mov r19,r4 48054: 10002f1e bne r2,zero,48114 <__pow5mult+0xe8> 48058: 2825883a mov r18,r5 4805c: 8021d0ba srai r16,r16,2 48060: 80001a26 beq r16,zero,480cc <__pow5mult+0xa0> 48064: 9c401217 ldw r17,72(r19) 48068: 8800061e bne r17,zero,48084 <__pow5mult+0x58> 4806c: 00003406 br 48140 <__pow5mult+0x114> 48070: 8021d07a srai r16,r16,1 48074: 80001526 beq r16,zero,480cc <__pow5mult+0xa0> 48078: 88800017 ldw r2,0(r17) 4807c: 10001c26 beq r2,zero,480f0 <__pow5mult+0xc4> 48080: 1023883a mov r17,r2 48084: 8080004c andi r2,r16,1 48088: 103ff926 beq r2,zero,48070 <__alt_data_end+0xfffd6070> 4808c: 880d883a mov r6,r17 48090: 900b883a mov r5,r18 48094: 9809883a mov r4,r19 48098: 0047da00 call 47da0 <__multiply> 4809c: 90001b26 beq r18,zero,4810c <__pow5mult+0xe0> 480a0: 91000117 ldw r4,4(r18) 480a4: 98c01317 ldw r3,76(r19) 480a8: 8021d07a srai r16,r16,1 480ac: 2109883a add r4,r4,r4 480b0: 2109883a add r4,r4,r4 480b4: 1907883a add r3,r3,r4 480b8: 19000017 ldw r4,0(r3) 480bc: 91000015 stw r4,0(r18) 480c0: 1c800015 stw r18,0(r3) 480c4: 1025883a mov r18,r2 480c8: 803feb1e bne r16,zero,48078 <__alt_data_end+0xfffd6078> 480cc: 9005883a mov r2,r18 480d0: dfc00517 ldw ra,20(sp) 480d4: dd000417 ldw r20,16(sp) 480d8: dcc00317 ldw r19,12(sp) 480dc: dc800217 ldw r18,8(sp) 480e0: dc400117 ldw r17,4(sp) 480e4: dc000017 ldw r16,0(sp) 480e8: dec00604 addi sp,sp,24 480ec: f800283a ret 480f0: 880d883a mov r6,r17 480f4: 880b883a mov r5,r17 480f8: 9809883a mov r4,r19 480fc: 0047da00 call 47da0 <__multiply> 48100: 88800015 stw r2,0(r17) 48104: 10000015 stw zero,0(r2) 48108: 003fdd06 br 48080 <__alt_data_end+0xfffd6080> 4810c: 1025883a mov r18,r2 48110: 003fd706 br 48070 <__alt_data_end+0xfffd6070> 48114: 10bfffc4 addi r2,r2,-1 48118: 1085883a add r2,r2,r2 4811c: 00c00174 movhi r3,5 48120: 18c89704 addi r3,r3,8796 48124: 1085883a add r2,r2,r2 48128: 1885883a add r2,r3,r2 4812c: 11800017 ldw r6,0(r2) 48130: 000f883a mov r7,zero 48134: 0047a000 call 47a00 <__multadd> 48138: 1025883a mov r18,r2 4813c: 003fc706 br 4805c <__alt_data_end+0xfffd605c> 48140: 05000044 movi r20,1 48144: a00b883a mov r5,r20 48148: 9809883a mov r4,r19 4814c: 00479300 call 47930 <_Balloc> 48150: 1023883a mov r17,r2 48154: 00809c44 movi r2,625 48158: 88800515 stw r2,20(r17) 4815c: 8d000415 stw r20,16(r17) 48160: 9c401215 stw r17,72(r19) 48164: 88000015 stw zero,0(r17) 48168: 003fc606 br 48084 <__alt_data_end+0xfffd6084> 0004816c <__lshift>: 4816c: defff904 addi sp,sp,-28 48170: dd400515 stw r21,20(sp) 48174: dcc00315 stw r19,12(sp) 48178: 302bd17a srai r21,r6,5 4817c: 2cc00417 ldw r19,16(r5) 48180: 28800217 ldw r2,8(r5) 48184: dd000415 stw r20,16(sp) 48188: ace7883a add r19,r21,r19 4818c: dc800215 stw r18,8(sp) 48190: dc400115 stw r17,4(sp) 48194: dc000015 stw r16,0(sp) 48198: dfc00615 stw ra,24(sp) 4819c: 9c000044 addi r16,r19,1 481a0: 2823883a mov r17,r5 481a4: 3029883a mov r20,r6 481a8: 2025883a mov r18,r4 481ac: 29400117 ldw r5,4(r5) 481b0: 1400030e bge r2,r16,481c0 <__lshift+0x54> 481b4: 1085883a add r2,r2,r2 481b8: 29400044 addi r5,r5,1 481bc: 143ffd16 blt r2,r16,481b4 <__alt_data_end+0xfffd61b4> 481c0: 9009883a mov r4,r18 481c4: 00479300 call 47930 <_Balloc> 481c8: 10c00504 addi r3,r2,20 481cc: 0540070e bge zero,r21,481ec <__lshift+0x80> 481d0: ad6b883a add r21,r21,r21 481d4: ad6b883a add r21,r21,r21 481d8: 1809883a mov r4,r3 481dc: 1d47883a add r3,r3,r21 481e0: 20000015 stw zero,0(r4) 481e4: 21000104 addi r4,r4,4 481e8: 193ffd1e bne r3,r4,481e0 <__alt_data_end+0xfffd61e0> 481ec: 8a000417 ldw r8,16(r17) 481f0: 89000504 addi r4,r17,20 481f4: a18007cc andi r6,r20,31 481f8: 4211883a add r8,r8,r8 481fc: 4211883a add r8,r8,r8 48200: 2211883a add r8,r4,r8 48204: 30002326 beq r6,zero,48294 <__lshift+0x128> 48208: 02400804 movi r9,32 4820c: 4993c83a sub r9,r9,r6 48210: 000b883a mov r5,zero 48214: 21c00017 ldw r7,0(r4) 48218: 1815883a mov r10,r3 4821c: 18c00104 addi r3,r3,4 48220: 398e983a sll r7,r7,r6 48224: 21000104 addi r4,r4,4 48228: 394ab03a or r5,r7,r5 4822c: 197fff15 stw r5,-4(r3) 48230: 217fff17 ldw r5,-4(r4) 48234: 2a4ad83a srl r5,r5,r9 48238: 223ff636 bltu r4,r8,48214 <__alt_data_end+0xfffd6214> 4823c: 51400115 stw r5,4(r10) 48240: 28001a1e bne r5,zero,482ac <__lshift+0x140> 48244: 843fffc4 addi r16,r16,-1 48248: 14000415 stw r16,16(r2) 4824c: 88000826 beq r17,zero,48270 <__lshift+0x104> 48250: 89000117 ldw r4,4(r17) 48254: 90c01317 ldw r3,76(r18) 48258: 2109883a add r4,r4,r4 4825c: 2109883a add r4,r4,r4 48260: 1907883a add r3,r3,r4 48264: 19000017 ldw r4,0(r3) 48268: 89000015 stw r4,0(r17) 4826c: 1c400015 stw r17,0(r3) 48270: dfc00617 ldw ra,24(sp) 48274: dd400517 ldw r21,20(sp) 48278: dd000417 ldw r20,16(sp) 4827c: dcc00317 ldw r19,12(sp) 48280: dc800217 ldw r18,8(sp) 48284: dc400117 ldw r17,4(sp) 48288: dc000017 ldw r16,0(sp) 4828c: dec00704 addi sp,sp,28 48290: f800283a ret 48294: 21400017 ldw r5,0(r4) 48298: 18c00104 addi r3,r3,4 4829c: 21000104 addi r4,r4,4 482a0: 197fff15 stw r5,-4(r3) 482a4: 223ffb36 bltu r4,r8,48294 <__alt_data_end+0xfffd6294> 482a8: 003fe606 br 48244 <__alt_data_end+0xfffd6244> 482ac: 9c000084 addi r16,r19,2 482b0: 003fe406 br 48244 <__alt_data_end+0xfffd6244> 000482b4 <__mcmp>: 482b4: 20800417 ldw r2,16(r4) 482b8: 28c00417 ldw r3,16(r5) 482bc: 10c5c83a sub r2,r2,r3 482c0: 1000111e bne r2,zero,48308 <__mcmp+0x54> 482c4: 18c7883a add r3,r3,r3 482c8: 18c7883a add r3,r3,r3 482cc: 21000504 addi r4,r4,20 482d0: 29400504 addi r5,r5,20 482d4: 20c5883a add r2,r4,r3 482d8: 28cb883a add r5,r5,r3 482dc: 00000106 br 482e4 <__mcmp+0x30> 482e0: 20800a2e bgeu r4,r2,4830c <__mcmp+0x58> 482e4: 10bfff04 addi r2,r2,-4 482e8: 297fff04 addi r5,r5,-4 482ec: 11800017 ldw r6,0(r2) 482f0: 28c00017 ldw r3,0(r5) 482f4: 30fffa26 beq r6,r3,482e0 <__alt_data_end+0xfffd62e0> 482f8: 30c00236 bltu r6,r3,48304 <__mcmp+0x50> 482fc: 00800044 movi r2,1 48300: f800283a ret 48304: 00bfffc4 movi r2,-1 48308: f800283a ret 4830c: 0005883a mov r2,zero 48310: f800283a ret 00048314 <__mdiff>: 48314: 28c00417 ldw r3,16(r5) 48318: 30800417 ldw r2,16(r6) 4831c: defffa04 addi sp,sp,-24 48320: dcc00315 stw r19,12(sp) 48324: dc800215 stw r18,8(sp) 48328: dfc00515 stw ra,20(sp) 4832c: dd000415 stw r20,16(sp) 48330: dc400115 stw r17,4(sp) 48334: dc000015 stw r16,0(sp) 48338: 1887c83a sub r3,r3,r2 4833c: 2825883a mov r18,r5 48340: 3027883a mov r19,r6 48344: 1800141e bne r3,zero,48398 <__mdiff+0x84> 48348: 1085883a add r2,r2,r2 4834c: 1085883a add r2,r2,r2 48350: 2a000504 addi r8,r5,20 48354: 34000504 addi r16,r6,20 48358: 4087883a add r3,r8,r2 4835c: 8085883a add r2,r16,r2 48360: 00000106 br 48368 <__mdiff+0x54> 48364: 40c0592e bgeu r8,r3,484cc <__mdiff+0x1b8> 48368: 18ffff04 addi r3,r3,-4 4836c: 10bfff04 addi r2,r2,-4 48370: 19c00017 ldw r7,0(r3) 48374: 11400017 ldw r5,0(r2) 48378: 397ffa26 beq r7,r5,48364 <__alt_data_end+0xfffd6364> 4837c: 3940592e bgeu r7,r5,484e4 <__mdiff+0x1d0> 48380: 9005883a mov r2,r18 48384: 4023883a mov r17,r8 48388: 9825883a mov r18,r19 4838c: 05000044 movi r20,1 48390: 1027883a mov r19,r2 48394: 00000406 br 483a8 <__mdiff+0x94> 48398: 18005616 blt r3,zero,484f4 <__mdiff+0x1e0> 4839c: 34400504 addi r17,r6,20 483a0: 2c000504 addi r16,r5,20 483a4: 0029883a mov r20,zero 483a8: 91400117 ldw r5,4(r18) 483ac: 00479300 call 47930 <_Balloc> 483b0: 92400417 ldw r9,16(r18) 483b4: 9b000417 ldw r12,16(r19) 483b8: 12c00504 addi r11,r2,20 483bc: 4a51883a add r8,r9,r9 483c0: 6319883a add r12,r12,r12 483c4: 4211883a add r8,r8,r8 483c8: 6319883a add r12,r12,r12 483cc: 15000315 stw r20,12(r2) 483d0: 8211883a add r8,r16,r8 483d4: 8b19883a add r12,r17,r12 483d8: 0007883a mov r3,zero 483dc: 81400017 ldw r5,0(r16) 483e0: 89c00017 ldw r7,0(r17) 483e4: 59800104 addi r6,r11,4 483e8: 293fffcc andi r4,r5,65535 483ec: 20c7883a add r3,r4,r3 483f0: 393fffcc andi r4,r7,65535 483f4: 1909c83a sub r4,r3,r4 483f8: 280ad43a srli r5,r5,16 483fc: 380ed43a srli r7,r7,16 48400: 2007d43a srai r3,r4,16 48404: 213fffcc andi r4,r4,65535 48408: 29cbc83a sub r5,r5,r7 4840c: 28c7883a add r3,r5,r3 48410: 180a943a slli r5,r3,16 48414: 8c400104 addi r17,r17,4 48418: 84000104 addi r16,r16,4 4841c: 2908b03a or r4,r5,r4 48420: 59000015 stw r4,0(r11) 48424: 1807d43a srai r3,r3,16 48428: 3015883a mov r10,r6 4842c: 3017883a mov r11,r6 48430: 8b3fea36 bltu r17,r12,483dc <__alt_data_end+0xfffd63dc> 48434: 8200162e bgeu r16,r8,48490 <__mdiff+0x17c> 48438: 8017883a mov r11,r16 4843c: 59400017 ldw r5,0(r11) 48440: 31800104 addi r6,r6,4 48444: 5ac00104 addi r11,r11,4 48448: 293fffcc andi r4,r5,65535 4844c: 20c7883a add r3,r4,r3 48450: 280ed43a srli r7,r5,16 48454: 180bd43a srai r5,r3,16 48458: 193fffcc andi r4,r3,65535 4845c: 3947883a add r3,r7,r5 48460: 180a943a slli r5,r3,16 48464: 1807d43a srai r3,r3,16 48468: 2908b03a or r4,r5,r4 4846c: 313fff15 stw r4,-4(r6) 48470: 5a3ff236 bltu r11,r8,4843c <__alt_data_end+0xfffd643c> 48474: 0406303a nor r3,zero,r16 48478: 1a07883a add r3,r3,r8 4847c: 1806d0ba srli r3,r3,2 48480: 18c00044 addi r3,r3,1 48484: 18c7883a add r3,r3,r3 48488: 18c7883a add r3,r3,r3 4848c: 50d5883a add r10,r10,r3 48490: 50ffff04 addi r3,r10,-4 48494: 2000041e bne r4,zero,484a8 <__mdiff+0x194> 48498: 18ffff04 addi r3,r3,-4 4849c: 19000017 ldw r4,0(r3) 484a0: 4a7fffc4 addi r9,r9,-1 484a4: 203ffc26 beq r4,zero,48498 <__alt_data_end+0xfffd6498> 484a8: 12400415 stw r9,16(r2) 484ac: dfc00517 ldw ra,20(sp) 484b0: dd000417 ldw r20,16(sp) 484b4: dcc00317 ldw r19,12(sp) 484b8: dc800217 ldw r18,8(sp) 484bc: dc400117 ldw r17,4(sp) 484c0: dc000017 ldw r16,0(sp) 484c4: dec00604 addi sp,sp,24 484c8: f800283a ret 484cc: 000b883a mov r5,zero 484d0: 00479300 call 47930 <_Balloc> 484d4: 00c00044 movi r3,1 484d8: 10c00415 stw r3,16(r2) 484dc: 10000515 stw zero,20(r2) 484e0: 003ff206 br 484ac <__alt_data_end+0xfffd64ac> 484e4: 8023883a mov r17,r16 484e8: 0029883a mov r20,zero 484ec: 4021883a mov r16,r8 484f0: 003fad06 br 483a8 <__alt_data_end+0xfffd63a8> 484f4: 9005883a mov r2,r18 484f8: 94400504 addi r17,r18,20 484fc: 9c000504 addi r16,r19,20 48500: 9825883a mov r18,r19 48504: 05000044 movi r20,1 48508: 1027883a mov r19,r2 4850c: 003fa606 br 483a8 <__alt_data_end+0xfffd63a8> 00048510 <__ulp>: 48510: 295ffc2c andhi r5,r5,32752 48514: 00bf3034 movhi r2,64704 48518: 2887883a add r3,r5,r2 4851c: 00c0020e bge zero,r3,48528 <__ulp+0x18> 48520: 0005883a mov r2,zero 48524: f800283a ret 48528: 00c7c83a sub r3,zero,r3 4852c: 1807d53a srai r3,r3,20 48530: 008004c4 movi r2,19 48534: 10c00b0e bge r2,r3,48564 <__ulp+0x54> 48538: 18bffb04 addi r2,r3,-20 4853c: 01000784 movi r4,30 48540: 0007883a mov r3,zero 48544: 20800516 blt r4,r2,4855c <__ulp+0x4c> 48548: 010007c4 movi r4,31 4854c: 2089c83a sub r4,r4,r2 48550: 00800044 movi r2,1 48554: 1104983a sll r2,r2,r4 48558: f800283a ret 4855c: 00800044 movi r2,1 48560: f800283a ret 48564: 01400234 movhi r5,8 48568: 28c7d83a sra r3,r5,r3 4856c: 0005883a mov r2,zero 48570: f800283a ret 00048574 <__b2d>: 48574: defffa04 addi sp,sp,-24 48578: dc000015 stw r16,0(sp) 4857c: 24000417 ldw r16,16(r4) 48580: dc400115 stw r17,4(sp) 48584: 24400504 addi r17,r4,20 48588: 8421883a add r16,r16,r16 4858c: 8421883a add r16,r16,r16 48590: 8c21883a add r16,r17,r16 48594: dc800215 stw r18,8(sp) 48598: 84bfff17 ldw r18,-4(r16) 4859c: dd000415 stw r20,16(sp) 485a0: dcc00315 stw r19,12(sp) 485a4: 9009883a mov r4,r18 485a8: 2829883a mov r20,r5 485ac: dfc00515 stw ra,20(sp) 485b0: 0047c4c0 call 47c4c <__hi0bits> 485b4: 00c00804 movi r3,32 485b8: 1889c83a sub r4,r3,r2 485bc: a1000015 stw r4,0(r20) 485c0: 01000284 movi r4,10 485c4: 84ffff04 addi r19,r16,-4 485c8: 20801216 blt r4,r2,48614 <__b2d+0xa0> 485cc: 018002c4 movi r6,11 485d0: 308dc83a sub r6,r6,r2 485d4: 9186d83a srl r3,r18,r6 485d8: 18cffc34 orhi r3,r3,16368 485dc: 8cc0212e bgeu r17,r19,48664 <__b2d+0xf0> 485e0: 813ffe17 ldw r4,-8(r16) 485e4: 218cd83a srl r6,r4,r6 485e8: 10800544 addi r2,r2,21 485ec: 9084983a sll r2,r18,r2 485f0: 1184b03a or r2,r2,r6 485f4: dfc00517 ldw ra,20(sp) 485f8: dd000417 ldw r20,16(sp) 485fc: dcc00317 ldw r19,12(sp) 48600: dc800217 ldw r18,8(sp) 48604: dc400117 ldw r17,4(sp) 48608: dc000017 ldw r16,0(sp) 4860c: dec00604 addi sp,sp,24 48610: f800283a ret 48614: 8cc00f2e bgeu r17,r19,48654 <__b2d+0xe0> 48618: 117ffd44 addi r5,r2,-11 4861c: 80bffe17 ldw r2,-8(r16) 48620: 28000e26 beq r5,zero,4865c <__b2d+0xe8> 48624: 1949c83a sub r4,r3,r5 48628: 9164983a sll r18,r18,r5 4862c: 1106d83a srl r3,r2,r4 48630: 81bffe04 addi r6,r16,-8 48634: 948ffc34 orhi r18,r18,16368 48638: 90c6b03a or r3,r18,r3 4863c: 89800e2e bgeu r17,r6,48678 <__b2d+0x104> 48640: 81bffd17 ldw r6,-12(r16) 48644: 1144983a sll r2,r2,r5 48648: 310ad83a srl r5,r6,r4 4864c: 2884b03a or r2,r5,r2 48650: 003fe806 br 485f4 <__alt_data_end+0xfffd65f4> 48654: 10bffd44 addi r2,r2,-11 48658: 1000041e bne r2,zero,4866c <__b2d+0xf8> 4865c: 90cffc34 orhi r3,r18,16368 48660: 003fe406 br 485f4 <__alt_data_end+0xfffd65f4> 48664: 000d883a mov r6,zero 48668: 003fdf06 br 485e8 <__alt_data_end+0xfffd65e8> 4866c: 90a4983a sll r18,r18,r2 48670: 0005883a mov r2,zero 48674: 003ff906 br 4865c <__alt_data_end+0xfffd665c> 48678: 1144983a sll r2,r2,r5 4867c: 003fdd06 br 485f4 <__alt_data_end+0xfffd65f4> 00048680 <__d2b>: 48680: defff804 addi sp,sp,-32 48684: dc000215 stw r16,8(sp) 48688: 3021883a mov r16,r6 4868c: dc400315 stw r17,12(sp) 48690: 8022907a slli r17,r16,1 48694: dd000615 stw r20,24(sp) 48698: 2829883a mov r20,r5 4869c: 01400044 movi r5,1 486a0: dcc00515 stw r19,20(sp) 486a4: dc800415 stw r18,16(sp) 486a8: dfc00715 stw ra,28(sp) 486ac: 3825883a mov r18,r7 486b0: 8822d57a srli r17,r17,21 486b4: 00479300 call 47930 <_Balloc> 486b8: 1027883a mov r19,r2 486bc: 00800434 movhi r2,16 486c0: 10bfffc4 addi r2,r2,-1 486c4: 808c703a and r6,r16,r2 486c8: 88000126 beq r17,zero,486d0 <__d2b+0x50> 486cc: 31800434 orhi r6,r6,16 486d0: d9800015 stw r6,0(sp) 486d4: a0002426 beq r20,zero,48768 <__d2b+0xe8> 486d8: d9000104 addi r4,sp,4 486dc: dd000115 stw r20,4(sp) 486e0: 0047cb40 call 47cb4 <__lo0bits> 486e4: d8c00017 ldw r3,0(sp) 486e8: 10002f1e bne r2,zero,487a8 <__d2b+0x128> 486ec: d9000117 ldw r4,4(sp) 486f0: 99000515 stw r4,20(r19) 486f4: 1821003a cmpeq r16,r3,zero 486f8: 01000084 movi r4,2 486fc: 2421c83a sub r16,r4,r16 48700: 98c00615 stw r3,24(r19) 48704: 9c000415 stw r16,16(r19) 48708: 88001f1e bne r17,zero,48788 <__d2b+0x108> 4870c: 10bef384 addi r2,r2,-1074 48710: 90800015 stw r2,0(r18) 48714: 00900034 movhi r2,16384 48718: 10bfffc4 addi r2,r2,-1 4871c: 8085883a add r2,r16,r2 48720: 1085883a add r2,r2,r2 48724: 1085883a add r2,r2,r2 48728: 9885883a add r2,r19,r2 4872c: 11000517 ldw r4,20(r2) 48730: 8020917a slli r16,r16,5 48734: 0047c4c0 call 47c4c <__hi0bits> 48738: d8c00817 ldw r3,32(sp) 4873c: 8085c83a sub r2,r16,r2 48740: 18800015 stw r2,0(r3) 48744: 9805883a mov r2,r19 48748: dfc00717 ldw ra,28(sp) 4874c: dd000617 ldw r20,24(sp) 48750: dcc00517 ldw r19,20(sp) 48754: dc800417 ldw r18,16(sp) 48758: dc400317 ldw r17,12(sp) 4875c: dc000217 ldw r16,8(sp) 48760: dec00804 addi sp,sp,32 48764: f800283a ret 48768: d809883a mov r4,sp 4876c: 0047cb40 call 47cb4 <__lo0bits> 48770: d8c00017 ldw r3,0(sp) 48774: 04000044 movi r16,1 48778: 9c000415 stw r16,16(r19) 4877c: 98c00515 stw r3,20(r19) 48780: 10800804 addi r2,r2,32 48784: 883fe126 beq r17,zero,4870c <__alt_data_end+0xfffd670c> 48788: 00c00d44 movi r3,53 4878c: 8c7ef344 addi r17,r17,-1075 48790: 88a3883a add r17,r17,r2 48794: 1885c83a sub r2,r3,r2 48798: d8c00817 ldw r3,32(sp) 4879c: 94400015 stw r17,0(r18) 487a0: 18800015 stw r2,0(r3) 487a4: 003fe706 br 48744 <__alt_data_end+0xfffd6744> 487a8: 01000804 movi r4,32 487ac: 2089c83a sub r4,r4,r2 487b0: 1908983a sll r4,r3,r4 487b4: d9400117 ldw r5,4(sp) 487b8: 1886d83a srl r3,r3,r2 487bc: 2148b03a or r4,r4,r5 487c0: 99000515 stw r4,20(r19) 487c4: d8c00015 stw r3,0(sp) 487c8: 003fca06 br 486f4 <__alt_data_end+0xfffd66f4> 000487cc <__ratio>: 487cc: defff904 addi sp,sp,-28 487d0: dc400315 stw r17,12(sp) 487d4: 2823883a mov r17,r5 487d8: d9400104 addi r5,sp,4 487dc: dfc00615 stw ra,24(sp) 487e0: dcc00515 stw r19,20(sp) 487e4: dc800415 stw r18,16(sp) 487e8: 2027883a mov r19,r4 487ec: dc000215 stw r16,8(sp) 487f0: 00485740 call 48574 <__b2d> 487f4: d80b883a mov r5,sp 487f8: 8809883a mov r4,r17 487fc: 1025883a mov r18,r2 48800: 1821883a mov r16,r3 48804: 00485740 call 48574 <__b2d> 48808: 8a000417 ldw r8,16(r17) 4880c: 99000417 ldw r4,16(r19) 48810: d9400117 ldw r5,4(sp) 48814: 2209c83a sub r4,r4,r8 48818: 2010917a slli r8,r4,5 4881c: d9000017 ldw r4,0(sp) 48820: 2909c83a sub r4,r5,r4 48824: 4109883a add r4,r8,r4 48828: 01000e0e bge zero,r4,48864 <__ratio+0x98> 4882c: 2008953a slli r4,r4,20 48830: 2421883a add r16,r4,r16 48834: 100d883a mov r6,r2 48838: 180f883a mov r7,r3 4883c: 9009883a mov r4,r18 48840: 800b883a mov r5,r16 48844: 004ca200 call 4ca20 <__divdf3> 48848: dfc00617 ldw ra,24(sp) 4884c: dcc00517 ldw r19,20(sp) 48850: dc800417 ldw r18,16(sp) 48854: dc400317 ldw r17,12(sp) 48858: dc000217 ldw r16,8(sp) 4885c: dec00704 addi sp,sp,28 48860: f800283a ret 48864: 2008953a slli r4,r4,20 48868: 1907c83a sub r3,r3,r4 4886c: 003ff106 br 48834 <__alt_data_end+0xfffd6834> 00048870 <_mprec_log10>: 48870: defffe04 addi sp,sp,-8 48874: dc000015 stw r16,0(sp) 48878: dfc00115 stw ra,4(sp) 4887c: 008005c4 movi r2,23 48880: 2021883a mov r16,r4 48884: 11000d0e bge r2,r4,488bc <_mprec_log10+0x4c> 48888: 0005883a mov r2,zero 4888c: 00cffc34 movhi r3,16368 48890: 843fffc4 addi r16,r16,-1 48894: 000d883a mov r6,zero 48898: 01d00934 movhi r7,16420 4889c: 1009883a mov r4,r2 488a0: 180b883a mov r5,r3 488a4: 004d6480 call 4d648 <__muldf3> 488a8: 803ff91e bne r16,zero,48890 <__alt_data_end+0xfffd6890> 488ac: dfc00117 ldw ra,4(sp) 488b0: dc000017 ldw r16,0(sp) 488b4: dec00204 addi sp,sp,8 488b8: f800283a ret 488bc: 202090fa slli r16,r4,3 488c0: 00800174 movhi r2,5 488c4: 1088ae04 addi r2,r2,8888 488c8: 1421883a add r16,r2,r16 488cc: 80800017 ldw r2,0(r16) 488d0: 80c00117 ldw r3,4(r16) 488d4: dfc00117 ldw ra,4(sp) 488d8: dc000017 ldw r16,0(sp) 488dc: dec00204 addi sp,sp,8 488e0: f800283a ret 000488e4 <__copybits>: 488e4: 297fffc4 addi r5,r5,-1 488e8: 280fd17a srai r7,r5,5 488ec: 30c00417 ldw r3,16(r6) 488f0: 30800504 addi r2,r6,20 488f4: 39c00044 addi r7,r7,1 488f8: 18c7883a add r3,r3,r3 488fc: 39cf883a add r7,r7,r7 48900: 18c7883a add r3,r3,r3 48904: 39cf883a add r7,r7,r7 48908: 10c7883a add r3,r2,r3 4890c: 21cf883a add r7,r4,r7 48910: 10c00d2e bgeu r2,r3,48948 <__copybits+0x64> 48914: 200b883a mov r5,r4 48918: 12000017 ldw r8,0(r2) 4891c: 29400104 addi r5,r5,4 48920: 10800104 addi r2,r2,4 48924: 2a3fff15 stw r8,-4(r5) 48928: 10fffb36 bltu r2,r3,48918 <__alt_data_end+0xfffd6918> 4892c: 1985c83a sub r2,r3,r6 48930: 10bffac4 addi r2,r2,-21 48934: 1004d0ba srli r2,r2,2 48938: 10800044 addi r2,r2,1 4893c: 1085883a add r2,r2,r2 48940: 1085883a add r2,r2,r2 48944: 2089883a add r4,r4,r2 48948: 21c0032e bgeu r4,r7,48958 <__copybits+0x74> 4894c: 20000015 stw zero,0(r4) 48950: 21000104 addi r4,r4,4 48954: 21fffd36 bltu r4,r7,4894c <__alt_data_end+0xfffd694c> 48958: f800283a ret 0004895c <__any_on>: 4895c: 20c00417 ldw r3,16(r4) 48960: 2805d17a srai r2,r5,5 48964: 21000504 addi r4,r4,20 48968: 18800d0e bge r3,r2,489a0 <__any_on+0x44> 4896c: 18c7883a add r3,r3,r3 48970: 18c7883a add r3,r3,r3 48974: 20c7883a add r3,r4,r3 48978: 20c0192e bgeu r4,r3,489e0 <__any_on+0x84> 4897c: 18bfff17 ldw r2,-4(r3) 48980: 18ffff04 addi r3,r3,-4 48984: 1000041e bne r2,zero,48998 <__any_on+0x3c> 48988: 20c0142e bgeu r4,r3,489dc <__any_on+0x80> 4898c: 18ffff04 addi r3,r3,-4 48990: 19400017 ldw r5,0(r3) 48994: 283ffc26 beq r5,zero,48988 <__alt_data_end+0xfffd6988> 48998: 00800044 movi r2,1 4899c: f800283a ret 489a0: 10c00a0e bge r2,r3,489cc <__any_on+0x70> 489a4: 1085883a add r2,r2,r2 489a8: 1085883a add r2,r2,r2 489ac: 294007cc andi r5,r5,31 489b0: 2087883a add r3,r4,r2 489b4: 283ff026 beq r5,zero,48978 <__alt_data_end+0xfffd6978> 489b8: 19800017 ldw r6,0(r3) 489bc: 3144d83a srl r2,r6,r5 489c0: 114a983a sll r5,r2,r5 489c4: 317ff41e bne r6,r5,48998 <__alt_data_end+0xfffd6998> 489c8: 003feb06 br 48978 <__alt_data_end+0xfffd6978> 489cc: 1085883a add r2,r2,r2 489d0: 1085883a add r2,r2,r2 489d4: 2087883a add r3,r4,r2 489d8: 003fe706 br 48978 <__alt_data_end+0xfffd6978> 489dc: f800283a ret 489e0: 0005883a mov r2,zero 489e4: f800283a ret 000489e8 <_putc_r>: 489e8: defffc04 addi sp,sp,-16 489ec: dc000215 stw r16,8(sp) 489f0: dfc00315 stw ra,12(sp) 489f4: 2021883a mov r16,r4 489f8: 20000226 beq r4,zero,48a04 <_putc_r+0x1c> 489fc: 20800e17 ldw r2,56(r4) 48a00: 10001b26 beq r2,zero,48a70 <_putc_r+0x88> 48a04: 30800217 ldw r2,8(r6) 48a08: 10bfffc4 addi r2,r2,-1 48a0c: 30800215 stw r2,8(r6) 48a10: 10000a16 blt r2,zero,48a3c <_putc_r+0x54> 48a14: 30800017 ldw r2,0(r6) 48a18: 11400005 stb r5,0(r2) 48a1c: 30800017 ldw r2,0(r6) 48a20: 10c00044 addi r3,r2,1 48a24: 30c00015 stw r3,0(r6) 48a28: 10800003 ldbu r2,0(r2) 48a2c: dfc00317 ldw ra,12(sp) 48a30: dc000217 ldw r16,8(sp) 48a34: dec00404 addi sp,sp,16 48a38: f800283a ret 48a3c: 30c00617 ldw r3,24(r6) 48a40: 10c00616 blt r2,r3,48a5c <_putc_r+0x74> 48a44: 30800017 ldw r2,0(r6) 48a48: 00c00284 movi r3,10 48a4c: 11400005 stb r5,0(r2) 48a50: 30800017 ldw r2,0(r6) 48a54: 11400003 ldbu r5,0(r2) 48a58: 28fff11e bne r5,r3,48a20 <__alt_data_end+0xfffd6a20> 48a5c: 8009883a mov r4,r16 48a60: dfc00317 ldw ra,12(sp) 48a64: dc000217 ldw r16,8(sp) 48a68: dec00404 addi sp,sp,16 48a6c: 004a7b01 jmpi 4a7b0 <__swbuf_r> 48a70: d9400015 stw r5,0(sp) 48a74: d9800115 stw r6,4(sp) 48a78: 004652c0 call 4652c <__sinit> 48a7c: d9800117 ldw r6,4(sp) 48a80: d9400017 ldw r5,0(sp) 48a84: 003fdf06 br 48a04 <__alt_data_end+0xfffd6a04> 00048a88 : 48a88: 00800174 movhi r2,5 48a8c: defffc04 addi sp,sp,-16 48a90: 10908b04 addi r2,r2,16940 48a94: dc000115 stw r16,4(sp) 48a98: 14000017 ldw r16,0(r2) 48a9c: dc400215 stw r17,8(sp) 48aa0: dfc00315 stw ra,12(sp) 48aa4: 2023883a mov r17,r4 48aa8: 80000226 beq r16,zero,48ab4 48aac: 80800e17 ldw r2,56(r16) 48ab0: 10001a26 beq r2,zero,48b1c 48ab4: 28800217 ldw r2,8(r5) 48ab8: 10bfffc4 addi r2,r2,-1 48abc: 28800215 stw r2,8(r5) 48ac0: 10000b16 blt r2,zero,48af0 48ac4: 28800017 ldw r2,0(r5) 48ac8: 14400005 stb r17,0(r2) 48acc: 28800017 ldw r2,0(r5) 48ad0: 10c00044 addi r3,r2,1 48ad4: 28c00015 stw r3,0(r5) 48ad8: 10800003 ldbu r2,0(r2) 48adc: dfc00317 ldw ra,12(sp) 48ae0: dc400217 ldw r17,8(sp) 48ae4: dc000117 ldw r16,4(sp) 48ae8: dec00404 addi sp,sp,16 48aec: f800283a ret 48af0: 28c00617 ldw r3,24(r5) 48af4: 10c00e16 blt r2,r3,48b30 48af8: 28800017 ldw r2,0(r5) 48afc: 01000284 movi r4,10 48b00: 14400005 stb r17,0(r2) 48b04: 28800017 ldw r2,0(r5) 48b08: 10c00003 ldbu r3,0(r2) 48b0c: 193ff01e bne r3,r4,48ad0 <__alt_data_end+0xfffd6ad0> 48b10: 280d883a mov r6,r5 48b14: 180b883a mov r5,r3 48b18: 00000706 br 48b38 48b1c: 8009883a mov r4,r16 48b20: d9400015 stw r5,0(sp) 48b24: 004652c0 call 4652c <__sinit> 48b28: d9400017 ldw r5,0(sp) 48b2c: 003fe106 br 48ab4 <__alt_data_end+0xfffd6ab4> 48b30: 280d883a mov r6,r5 48b34: 880b883a mov r5,r17 48b38: 8009883a mov r4,r16 48b3c: dfc00317 ldw ra,12(sp) 48b40: dc400217 ldw r17,8(sp) 48b44: dc000117 ldw r16,4(sp) 48b48: dec00404 addi sp,sp,16 48b4c: 004a7b01 jmpi 4a7b0 <__swbuf_r> 00048b50 : 48b50: 2080030b ldhu r2,12(r4) 48b54: 00c00244 movi r3,9 48b58: 1080024c andi r2,r2,9 48b5c: 10c00226 beq r2,r3,48b68 48b60: 0005883a mov r2,zero 48b64: f800283a ret 48b68: 004619c1 jmpi 4619c 00048b6c <__srefill_r>: 48b6c: defffc04 addi sp,sp,-16 48b70: dc400115 stw r17,4(sp) 48b74: dc000015 stw r16,0(sp) 48b78: dfc00315 stw ra,12(sp) 48b7c: dc800215 stw r18,8(sp) 48b80: 2023883a mov r17,r4 48b84: 2821883a mov r16,r5 48b88: 20000226 beq r4,zero,48b94 <__srefill_r+0x28> 48b8c: 20800e17 ldw r2,56(r4) 48b90: 10003c26 beq r2,zero,48c84 <__srefill_r+0x118> 48b94: 80c0030b ldhu r3,12(r16) 48b98: 1908000c andi r4,r3,8192 48b9c: 1805883a mov r2,r3 48ba0: 2000071e bne r4,zero,48bc0 <__srefill_r+0x54> 48ba4: 81001917 ldw r4,100(r16) 48ba8: 18880014 ori r2,r3,8192 48bac: 00f7ffc4 movi r3,-8193 48bb0: 20c8703a and r4,r4,r3 48bb4: 8080030d sth r2,12(r16) 48bb8: 1007883a mov r3,r2 48bbc: 81001915 stw r4,100(r16) 48bc0: 80000115 stw zero,4(r16) 48bc4: 1100080c andi r4,r2,32 48bc8: 2000571e bne r4,zero,48d28 <__srefill_r+0x1bc> 48bcc: 1100010c andi r4,r2,4 48bd0: 20001f26 beq r4,zero,48c50 <__srefill_r+0xe4> 48bd4: 81400c17 ldw r5,48(r16) 48bd8: 28000826 beq r5,zero,48bfc <__srefill_r+0x90> 48bdc: 80801004 addi r2,r16,64 48be0: 28800226 beq r5,r2,48bec <__srefill_r+0x80> 48be4: 8809883a mov r4,r17 48be8: 00466a00 call 466a0 <_free_r> 48bec: 80800f17 ldw r2,60(r16) 48bf0: 80000c15 stw zero,48(r16) 48bf4: 80800115 stw r2,4(r16) 48bf8: 1000391e bne r2,zero,48ce0 <__srefill_r+0x174> 48bfc: 80800417 ldw r2,16(r16) 48c00: 10004b26 beq r2,zero,48d30 <__srefill_r+0x1c4> 48c04: 8480030b ldhu r18,12(r16) 48c08: 908000cc andi r2,r18,3 48c0c: 10001f1e bne r2,zero,48c8c <__srefill_r+0x120> 48c10: 81800417 ldw r6,16(r16) 48c14: 80800817 ldw r2,32(r16) 48c18: 81c00517 ldw r7,20(r16) 48c1c: 81400717 ldw r5,28(r16) 48c20: 81800015 stw r6,0(r16) 48c24: 8809883a mov r4,r17 48c28: 103ee83a callr r2 48c2c: 80800115 stw r2,4(r16) 48c30: 00800e0e bge zero,r2,48c6c <__srefill_r+0x100> 48c34: 0005883a mov r2,zero 48c38: dfc00317 ldw ra,12(sp) 48c3c: dc800217 ldw r18,8(sp) 48c40: dc400117 ldw r17,4(sp) 48c44: dc000017 ldw r16,0(sp) 48c48: dec00404 addi sp,sp,16 48c4c: f800283a ret 48c50: 1100040c andi r4,r2,16 48c54: 20003026 beq r4,zero,48d18 <__srefill_r+0x1ac> 48c58: 1080020c andi r2,r2,8 48c5c: 1000241e bne r2,zero,48cf0 <__srefill_r+0x184> 48c60: 18c00114 ori r3,r3,4 48c64: 80c0030d sth r3,12(r16) 48c68: 003fe406 br 48bfc <__alt_data_end+0xfffd6bfc> 48c6c: 80c0030b ldhu r3,12(r16) 48c70: 1000161e bne r2,zero,48ccc <__srefill_r+0x160> 48c74: 18c00814 ori r3,r3,32 48c78: 00bfffc4 movi r2,-1 48c7c: 80c0030d sth r3,12(r16) 48c80: 003fed06 br 48c38 <__alt_data_end+0xfffd6c38> 48c84: 004652c0 call 4652c <__sinit> 48c88: 003fc206 br 48b94 <__alt_data_end+0xfffd6b94> 48c8c: 00800174 movhi r2,5 48c90: 10908a04 addi r2,r2,16936 48c94: 11000017 ldw r4,0(r2) 48c98: 01400174 movhi r5,5 48c9c: 00800044 movi r2,1 48ca0: 2962d404 addi r5,r5,-29872 48ca4: 8080030d sth r2,12(r16) 48ca8: 00469b00 call 469b0 <_fwalk> 48cac: 00800244 movi r2,9 48cb0: 8480030d sth r18,12(r16) 48cb4: 9480024c andi r18,r18,9 48cb8: 90bfd51e bne r18,r2,48c10 <__alt_data_end+0xfffd6c10> 48cbc: 800b883a mov r5,r16 48cc0: 8809883a mov r4,r17 48cc4: 0045f240 call 45f24 <__sflush_r> 48cc8: 003fd106 br 48c10 <__alt_data_end+0xfffd6c10> 48ccc: 18c01014 ori r3,r3,64 48cd0: 80000115 stw zero,4(r16) 48cd4: 00bfffc4 movi r2,-1 48cd8: 80c0030d sth r3,12(r16) 48cdc: 003fd606 br 48c38 <__alt_data_end+0xfffd6c38> 48ce0: 80c00e17 ldw r3,56(r16) 48ce4: 0005883a mov r2,zero 48ce8: 80c00015 stw r3,0(r16) 48cec: 003fd206 br 48c38 <__alt_data_end+0xfffd6c38> 48cf0: 800b883a mov r5,r16 48cf4: 8809883a mov r4,r17 48cf8: 00461400 call 46140 <_fflush_r> 48cfc: 10000a1e bne r2,zero,48d28 <__srefill_r+0x1bc> 48d00: 8080030b ldhu r2,12(r16) 48d04: 00fffdc4 movi r3,-9 48d08: 80000215 stw zero,8(r16) 48d0c: 1886703a and r3,r3,r2 48d10: 80000615 stw zero,24(r16) 48d14: 003fd206 br 48c60 <__alt_data_end+0xfffd6c60> 48d18: 00800244 movi r2,9 48d1c: 88800015 stw r2,0(r17) 48d20: 18c01014 ori r3,r3,64 48d24: 80c0030d sth r3,12(r16) 48d28: 00bfffc4 movi r2,-1 48d2c: 003fc206 br 48c38 <__alt_data_end+0xfffd6c38> 48d30: 800b883a mov r5,r16 48d34: 8809883a mov r4,r17 48d38: 0046c140 call 46c14 <__smakebuf_r> 48d3c: 003fb106 br 48c04 <__alt_data_end+0xfffd6c04> 00048d40 <__fpclassifyd>: 48d40: 00a00034 movhi r2,32768 48d44: 10bfffc4 addi r2,r2,-1 48d48: 2884703a and r2,r5,r2 48d4c: 10000726 beq r2,zero,48d6c <__fpclassifyd+0x2c> 48d50: 00fffc34 movhi r3,65520 48d54: 019ff834 movhi r6,32736 48d58: 28c7883a add r3,r5,r3 48d5c: 31bfffc4 addi r6,r6,-1 48d60: 30c00536 bltu r6,r3,48d78 <__fpclassifyd+0x38> 48d64: 00800104 movi r2,4 48d68: f800283a ret 48d6c: 2000021e bne r4,zero,48d78 <__fpclassifyd+0x38> 48d70: 00800084 movi r2,2 48d74: f800283a ret 48d78: 00dffc34 movhi r3,32752 48d7c: 019ff834 movhi r6,32736 48d80: 28cb883a add r5,r5,r3 48d84: 31bfffc4 addi r6,r6,-1 48d88: 317ff62e bgeu r6,r5,48d64 <__alt_data_end+0xfffd6d64> 48d8c: 01400434 movhi r5,16 48d90: 297fffc4 addi r5,r5,-1 48d94: 28800236 bltu r5,r2,48da0 <__fpclassifyd+0x60> 48d98: 008000c4 movi r2,3 48d9c: f800283a ret 48da0: 10c00226 beq r2,r3,48dac <__fpclassifyd+0x6c> 48da4: 0005883a mov r2,zero 48da8: f800283a ret 48dac: 2005003a cmpeq r2,r4,zero 48db0: f800283a ret 00048db4 <_sbrk_r>: 48db4: defffd04 addi sp,sp,-12 48db8: dc000015 stw r16,0(sp) 48dbc: 04000174 movhi r16,5 48dc0: dc400115 stw r17,4(sp) 48dc4: 8417ab04 addi r16,r16,24236 48dc8: 2023883a mov r17,r4 48dcc: 2809883a mov r4,r5 48dd0: dfc00215 stw ra,8(sp) 48dd4: 80000015 stw zero,0(r16) 48dd8: 004f0000 call 4f000 48ddc: 00ffffc4 movi r3,-1 48de0: 10c00526 beq r2,r3,48df8 <_sbrk_r+0x44> 48de4: dfc00217 ldw ra,8(sp) 48de8: dc400117 ldw r17,4(sp) 48dec: dc000017 ldw r16,0(sp) 48df0: dec00304 addi sp,sp,12 48df4: f800283a ret 48df8: 80c00017 ldw r3,0(r16) 48dfc: 183ff926 beq r3,zero,48de4 <__alt_data_end+0xfffd6de4> 48e00: 88c00015 stw r3,0(r17) 48e04: 003ff706 br 48de4 <__alt_data_end+0xfffd6de4> 00048e08 <__sread>: 48e08: defffe04 addi sp,sp,-8 48e0c: dc000015 stw r16,0(sp) 48e10: 2821883a mov r16,r5 48e14: 2940038f ldh r5,14(r5) 48e18: dfc00115 stw ra,4(sp) 48e1c: 004b4d80 call 4b4d8 <_read_r> 48e20: 10000716 blt r2,zero,48e40 <__sread+0x38> 48e24: 80c01417 ldw r3,80(r16) 48e28: 1887883a add r3,r3,r2 48e2c: 80c01415 stw r3,80(r16) 48e30: dfc00117 ldw ra,4(sp) 48e34: dc000017 ldw r16,0(sp) 48e38: dec00204 addi sp,sp,8 48e3c: f800283a ret 48e40: 80c0030b ldhu r3,12(r16) 48e44: 18fbffcc andi r3,r3,61439 48e48: 80c0030d sth r3,12(r16) 48e4c: dfc00117 ldw ra,4(sp) 48e50: dc000017 ldw r16,0(sp) 48e54: dec00204 addi sp,sp,8 48e58: f800283a ret 00048e5c <__seofread>: 48e5c: 0005883a mov r2,zero 48e60: f800283a ret 00048e64 <__swrite>: 48e64: 2880030b ldhu r2,12(r5) 48e68: defffb04 addi sp,sp,-20 48e6c: dcc00315 stw r19,12(sp) 48e70: dc800215 stw r18,8(sp) 48e74: dc400115 stw r17,4(sp) 48e78: dc000015 stw r16,0(sp) 48e7c: dfc00415 stw ra,16(sp) 48e80: 10c0400c andi r3,r2,256 48e84: 2821883a mov r16,r5 48e88: 2023883a mov r17,r4 48e8c: 3025883a mov r18,r6 48e90: 3827883a mov r19,r7 48e94: 18000526 beq r3,zero,48eac <__swrite+0x48> 48e98: 2940038f ldh r5,14(r5) 48e9c: 01c00084 movi r7,2 48ea0: 000d883a mov r6,zero 48ea4: 004b31c0 call 4b31c <_lseek_r> 48ea8: 8080030b ldhu r2,12(r16) 48eac: 8140038f ldh r5,14(r16) 48eb0: 10bbffcc andi r2,r2,61439 48eb4: 980f883a mov r7,r19 48eb8: 900d883a mov r6,r18 48ebc: 8809883a mov r4,r17 48ec0: 8080030d sth r2,12(r16) 48ec4: dfc00417 ldw ra,16(sp) 48ec8: dcc00317 ldw r19,12(sp) 48ecc: dc800217 ldw r18,8(sp) 48ed0: dc400117 ldw r17,4(sp) 48ed4: dc000017 ldw r16,0(sp) 48ed8: dec00504 addi sp,sp,20 48edc: 004a9081 jmpi 4a908 <_write_r> 00048ee0 <__sseek>: 48ee0: defffe04 addi sp,sp,-8 48ee4: dc000015 stw r16,0(sp) 48ee8: 2821883a mov r16,r5 48eec: 2940038f ldh r5,14(r5) 48ef0: dfc00115 stw ra,4(sp) 48ef4: 004b31c0 call 4b31c <_lseek_r> 48ef8: 00ffffc4 movi r3,-1 48efc: 10c00826 beq r2,r3,48f20 <__sseek+0x40> 48f00: 80c0030b ldhu r3,12(r16) 48f04: 80801415 stw r2,80(r16) 48f08: 18c40014 ori r3,r3,4096 48f0c: 80c0030d sth r3,12(r16) 48f10: dfc00117 ldw ra,4(sp) 48f14: dc000017 ldw r16,0(sp) 48f18: dec00204 addi sp,sp,8 48f1c: f800283a ret 48f20: 80c0030b ldhu r3,12(r16) 48f24: 18fbffcc andi r3,r3,61439 48f28: 80c0030d sth r3,12(r16) 48f2c: dfc00117 ldw ra,4(sp) 48f30: dc000017 ldw r16,0(sp) 48f34: dec00204 addi sp,sp,8 48f38: f800283a ret 00048f3c <__sclose>: 48f3c: 2940038f ldh r5,14(r5) 48f40: 004a9681 jmpi 4a968 <_close_r> 00048f44 : 48f44: 2144b03a or r2,r4,r5 48f48: 108000cc andi r2,r2,3 48f4c: 1000171e bne r2,zero,48fac 48f50: 20800017 ldw r2,0(r4) 48f54: 28c00017 ldw r3,0(r5) 48f58: 10c0141e bne r2,r3,48fac 48f5c: 027fbff4 movhi r9,65279 48f60: 4a7fbfc4 addi r9,r9,-257 48f64: 0086303a nor r3,zero,r2 48f68: 02202074 movhi r8,32897 48f6c: 1245883a add r2,r2,r9 48f70: 42202004 addi r8,r8,-32640 48f74: 10c4703a and r2,r2,r3 48f78: 1204703a and r2,r2,r8 48f7c: 10000226 beq r2,zero,48f88 48f80: 00002306 br 49010 48f84: 1000221e bne r2,zero,49010 48f88: 21000104 addi r4,r4,4 48f8c: 20c00017 ldw r3,0(r4) 48f90: 29400104 addi r5,r5,4 48f94: 29800017 ldw r6,0(r5) 48f98: 1a4f883a add r7,r3,r9 48f9c: 00c4303a nor r2,zero,r3 48fa0: 3884703a and r2,r7,r2 48fa4: 1204703a and r2,r2,r8 48fa8: 19bff626 beq r3,r6,48f84 <__alt_data_end+0xfffd6f84> 48fac: 20800003 ldbu r2,0(r4) 48fb0: 10c03fcc andi r3,r2,255 48fb4: 18c0201c xori r3,r3,128 48fb8: 18ffe004 addi r3,r3,-128 48fbc: 18000c26 beq r3,zero,48ff0 48fc0: 29800007 ldb r6,0(r5) 48fc4: 19800326 beq r3,r6,48fd4 48fc8: 00001306 br 49018 48fcc: 29800007 ldb r6,0(r5) 48fd0: 11800b1e bne r2,r6,49000 48fd4: 21000044 addi r4,r4,1 48fd8: 20c00003 ldbu r3,0(r4) 48fdc: 29400044 addi r5,r5,1 48fe0: 18803fcc andi r2,r3,255 48fe4: 1080201c xori r2,r2,128 48fe8: 10bfe004 addi r2,r2,-128 48fec: 103ff71e bne r2,zero,48fcc <__alt_data_end+0xfffd6fcc> 48ff0: 0007883a mov r3,zero 48ff4: 28800003 ldbu r2,0(r5) 48ff8: 1885c83a sub r2,r3,r2 48ffc: f800283a ret 49000: 28800003 ldbu r2,0(r5) 49004: 18c03fcc andi r3,r3,255 49008: 1885c83a sub r2,r3,r2 4900c: f800283a ret 49010: 0005883a mov r2,zero 49014: f800283a ret 49018: 10c03fcc andi r3,r2,255 4901c: 003ff506 br 48ff4 <__alt_data_end+0xfffd6ff4> 00049020 : 49020: 208000cc andi r2,r4,3 49024: 10002026 beq r2,zero,490a8 49028: 20800007 ldb r2,0(r4) 4902c: 10002026 beq r2,zero,490b0 49030: 2005883a mov r2,r4 49034: 00000206 br 49040 49038: 10c00007 ldb r3,0(r2) 4903c: 18001826 beq r3,zero,490a0 49040: 10800044 addi r2,r2,1 49044: 10c000cc andi r3,r2,3 49048: 183ffb1e bne r3,zero,49038 <__alt_data_end+0xfffd7038> 4904c: 10c00017 ldw r3,0(r2) 49050: 01ffbff4 movhi r7,65279 49054: 39ffbfc4 addi r7,r7,-257 49058: 00ca303a nor r5,zero,r3 4905c: 01a02074 movhi r6,32897 49060: 19c7883a add r3,r3,r7 49064: 31a02004 addi r6,r6,-32640 49068: 1946703a and r3,r3,r5 4906c: 1986703a and r3,r3,r6 49070: 1800091e bne r3,zero,49098 49074: 10800104 addi r2,r2,4 49078: 10c00017 ldw r3,0(r2) 4907c: 19cb883a add r5,r3,r7 49080: 00c6303a nor r3,zero,r3 49084: 28c6703a and r3,r5,r3 49088: 1986703a and r3,r3,r6 4908c: 183ff926 beq r3,zero,49074 <__alt_data_end+0xfffd7074> 49090: 00000106 br 49098 49094: 10800044 addi r2,r2,1 49098: 10c00007 ldb r3,0(r2) 4909c: 183ffd1e bne r3,zero,49094 <__alt_data_end+0xfffd7094> 490a0: 1105c83a sub r2,r2,r4 490a4: f800283a ret 490a8: 2005883a mov r2,r4 490ac: 003fe706 br 4904c <__alt_data_end+0xfffd704c> 490b0: 0005883a mov r2,zero 490b4: f800283a ret 000490b8 <__sprint_r.part.0>: 490b8: 28801917 ldw r2,100(r5) 490bc: defff604 addi sp,sp,-40 490c0: dd400515 stw r21,20(sp) 490c4: dfc00915 stw ra,36(sp) 490c8: df000815 stw fp,32(sp) 490cc: ddc00715 stw r23,28(sp) 490d0: dd800615 stw r22,24(sp) 490d4: dd000415 stw r20,16(sp) 490d8: dcc00315 stw r19,12(sp) 490dc: dc800215 stw r18,8(sp) 490e0: dc400115 stw r17,4(sp) 490e4: dc000015 stw r16,0(sp) 490e8: 1088000c andi r2,r2,8192 490ec: 302b883a mov r21,r6 490f0: 10002e26 beq r2,zero,491ac <__sprint_r.part.0+0xf4> 490f4: 30800217 ldw r2,8(r6) 490f8: 35800017 ldw r22,0(r6) 490fc: 10002926 beq r2,zero,491a4 <__sprint_r.part.0+0xec> 49100: 2827883a mov r19,r5 49104: 2029883a mov r20,r4 49108: b5c00104 addi r23,r22,4 4910c: 04bfffc4 movi r18,-1 49110: bc400017 ldw r17,0(r23) 49114: b4000017 ldw r16,0(r22) 49118: 0039883a mov fp,zero 4911c: 8822d0ba srli r17,r17,2 49120: 8800031e bne r17,zero,49130 <__sprint_r.part.0+0x78> 49124: 00001806 br 49188 <__sprint_r.part.0+0xd0> 49128: 84000104 addi r16,r16,4 4912c: 8f001526 beq r17,fp,49184 <__sprint_r.part.0+0xcc> 49130: 81400017 ldw r5,0(r16) 49134: 980d883a mov r6,r19 49138: a009883a mov r4,r20 4913c: 004ad000 call 4ad00 <_fputwc_r> 49140: e7000044 addi fp,fp,1 49144: 14bff81e bne r2,r18,49128 <__alt_data_end+0xfffd7128> 49148: 9005883a mov r2,r18 4914c: a8000215 stw zero,8(r21) 49150: a8000115 stw zero,4(r21) 49154: dfc00917 ldw ra,36(sp) 49158: df000817 ldw fp,32(sp) 4915c: ddc00717 ldw r23,28(sp) 49160: dd800617 ldw r22,24(sp) 49164: dd400517 ldw r21,20(sp) 49168: dd000417 ldw r20,16(sp) 4916c: dcc00317 ldw r19,12(sp) 49170: dc800217 ldw r18,8(sp) 49174: dc400117 ldw r17,4(sp) 49178: dc000017 ldw r16,0(sp) 4917c: dec00a04 addi sp,sp,40 49180: f800283a ret 49184: a8800217 ldw r2,8(r21) 49188: 8c63883a add r17,r17,r17 4918c: 8c63883a add r17,r17,r17 49190: 1445c83a sub r2,r2,r17 49194: a8800215 stw r2,8(r21) 49198: b5800204 addi r22,r22,8 4919c: bdc00204 addi r23,r23,8 491a0: 103fdb1e bne r2,zero,49110 <__alt_data_end+0xfffd7110> 491a4: 0005883a mov r2,zero 491a8: 003fe806 br 4914c <__alt_data_end+0xfffd714c> 491ac: 004ae000 call 4ae00 <__sfvwrite_r> 491b0: 003fe606 br 4914c <__alt_data_end+0xfffd714c> 000491b4 <__sprint_r>: 491b4: 30c00217 ldw r3,8(r6) 491b8: 18000126 beq r3,zero,491c0 <__sprint_r+0xc> 491bc: 00490b81 jmpi 490b8 <__sprint_r.part.0> 491c0: 30000115 stw zero,4(r6) 491c4: 0005883a mov r2,zero 491c8: f800283a ret 000491cc <___vfiprintf_internal_r>: 491cc: deffca04 addi sp,sp,-216 491d0: dd403115 stw r21,196(sp) 491d4: dfc03515 stw ra,212(sp) 491d8: df003415 stw fp,208(sp) 491dc: ddc03315 stw r23,204(sp) 491e0: dd803215 stw r22,200(sp) 491e4: dd003015 stw r20,192(sp) 491e8: dcc02f15 stw r19,188(sp) 491ec: dc802e15 stw r18,184(sp) 491f0: dc402d15 stw r17,180(sp) 491f4: dc002c15 stw r16,176(sp) 491f8: d9002115 stw r4,132(sp) 491fc: d9402015 stw r5,128(sp) 49200: d9c02215 stw r7,136(sp) 49204: 302b883a mov r21,r6 49208: 20000226 beq r4,zero,49214 <___vfiprintf_internal_r+0x48> 4920c: 20800e17 ldw r2,56(r4) 49210: 1000cf26 beq r2,zero,49550 <___vfiprintf_internal_r+0x384> 49214: d8c02017 ldw r3,128(sp) 49218: 1880030b ldhu r2,12(r3) 4921c: 10c8000c andi r3,r2,8192 49220: 1800071e bne r3,zero,49240 <___vfiprintf_internal_r+0x74> 49224: d9402017 ldw r5,128(sp) 49228: 00f7ffc4 movi r3,-8193 4922c: 10880014 ori r2,r2,8192 49230: 29001917 ldw r4,100(r5) 49234: 2880030d sth r2,12(r5) 49238: 20c6703a and r3,r4,r3 4923c: 28c01915 stw r3,100(r5) 49240: 10c0020c andi r3,r2,8 49244: 1800a526 beq r3,zero,494dc <___vfiprintf_internal_r+0x310> 49248: d9002017 ldw r4,128(sp) 4924c: 20c00417 ldw r3,16(r4) 49250: 1800a226 beq r3,zero,494dc <___vfiprintf_internal_r+0x310> 49254: 1080068c andi r2,r2,26 49258: 00c00284 movi r3,10 4925c: 10c0a826 beq r2,r3,49500 <___vfiprintf_internal_r+0x334> 49260: d9001a04 addi r4,sp,104 49264: d94019c4 addi r5,sp,103 49268: 04800174 movhi r18,5 4926c: 2145c83a sub r2,r4,r5 49270: 9488e004 addi r18,r18,9088 49274: d9001e15 stw r4,120(sp) 49278: d9401f15 stw r5,124(sp) 4927c: dec01a15 stw sp,104(sp) 49280: d8001c15 stw zero,112(sp) 49284: d8001b15 stw zero,108(sp) 49288: d811883a mov r8,sp 4928c: d8002615 stw zero,152(sp) 49290: d8002415 stw zero,144(sp) 49294: d8802815 stw r2,160(sp) 49298: a82d883a mov r22,r21 4929c: b0800007 ldb r2,0(r22) 492a0: 10040d26 beq r2,zero,4a2d8 <___vfiprintf_internal_r+0x110c> 492a4: 00c00944 movi r3,37 492a8: b029883a mov r20,r22 492ac: 10c0021e bne r2,r3,492b8 <___vfiprintf_internal_r+0xec> 492b0: 00001606 br 4930c <___vfiprintf_internal_r+0x140> 492b4: 10c00326 beq r2,r3,492c4 <___vfiprintf_internal_r+0xf8> 492b8: a5000044 addi r20,r20,1 492bc: a0800007 ldb r2,0(r20) 492c0: 103ffc1e bne r2,zero,492b4 <__alt_data_end+0xfffd72b4> 492c4: a5a1c83a sub r16,r20,r22 492c8: 80001026 beq r16,zero,4930c <___vfiprintf_internal_r+0x140> 492cc: d8c01c17 ldw r3,112(sp) 492d0: d8801b17 ldw r2,108(sp) 492d4: 45800015 stw r22,0(r8) 492d8: 80c7883a add r3,r16,r3 492dc: 10800044 addi r2,r2,1 492e0: 44000115 stw r16,4(r8) 492e4: d8c01c15 stw r3,112(sp) 492e8: d8801b15 stw r2,108(sp) 492ec: 010001c4 movi r4,7 492f0: 2080750e bge r4,r2,494c8 <___vfiprintf_internal_r+0x2fc> 492f4: 1803951e bne r3,zero,4a14c <___vfiprintf_internal_r+0xf80> 492f8: d8c02417 ldw r3,144(sp) 492fc: d8001b15 stw zero,108(sp) 49300: d811883a mov r8,sp 49304: 1c07883a add r3,r3,r16 49308: d8c02415 stw r3,144(sp) 4930c: a0800007 ldb r2,0(r20) 49310: 1002e026 beq r2,zero,49e94 <___vfiprintf_internal_r+0xcc8> 49314: a5800044 addi r22,r20,1 49318: a0c00047 ldb r3,1(r20) 4931c: d8001d85 stb zero,118(sp) 49320: 0027883a mov r19,zero 49324: d8002305 stb zero,140(sp) 49328: 043fffc4 movi r16,-1 4932c: d8002515 stw zero,148(sp) 49330: 0023883a mov r17,zero 49334: 05001604 movi r20,88 49338: 05400244 movi r21,9 4933c: 402f883a mov r23,r8 49340: b5800044 addi r22,r22,1 49344: 18bff804 addi r2,r3,-32 49348: a0827736 bltu r20,r2,49d28 <___vfiprintf_internal_r+0xb5c> 4934c: 100490ba slli r2,r2,2 49350: 01000174 movhi r4,5 49354: 2124d904 addi r4,r4,-27804 49358: 1105883a add r2,r2,r4 4935c: 10800017 ldw r2,0(r2) 49360: 1000683a jmp r2 49364: 00049a28 cmpgeui zero,zero,4712 49368: 00049d28 cmpgeui zero,zero,4724 4936c: 00049d28 cmpgeui zero,zero,4724 49370: 00049a44 movi zero,4713 49374: 00049d28 cmpgeui zero,zero,4724 49378: 00049d28 cmpgeui zero,zero,4724 4937c: 00049d28 cmpgeui zero,zero,4724 49380: 00049d28 cmpgeui zero,zero,4724 49384: 00049d28 cmpgeui zero,zero,4724 49388: 00049d28 cmpgeui zero,zero,4724 4938c: 00049c4c andi zero,zero,4721 49390: 00049c70 cmpltui zero,zero,4721 49394: 00049d28 cmpgeui zero,zero,4724 49398: 00049568 cmpgeui zero,zero,4693 4939c: 00049c84 movi zero,4722 493a0: 00049d28 cmpgeui zero,zero,4724 493a4: 00049a50 cmplti zero,zero,4713 493a8: 00049a5c xori zero,zero,4713 493ac: 00049a5c xori zero,zero,4713 493b0: 00049a5c xori zero,zero,4713 493b4: 00049a5c xori zero,zero,4713 493b8: 00049a5c xori zero,zero,4713 493bc: 00049a5c xori zero,zero,4713 493c0: 00049a5c xori zero,zero,4713 493c4: 00049a5c xori zero,zero,4713 493c8: 00049a5c xori zero,zero,4713 493cc: 00049d28 cmpgeui zero,zero,4724 493d0: 00049d28 cmpgeui zero,zero,4724 493d4: 00049d28 cmpgeui zero,zero,4724 493d8: 00049d28 cmpgeui zero,zero,4724 493dc: 00049d28 cmpgeui zero,zero,4724 493e0: 00049d28 cmpgeui zero,zero,4724 493e4: 00049d28 cmpgeui zero,zero,4724 493e8: 00049d28 cmpgeui zero,zero,4724 493ec: 00049d28 cmpgeui zero,zero,4724 493f0: 00049d28 cmpgeui zero,zero,4724 493f4: 00049a9c xori zero,zero,4714 493f8: 00049d28 cmpgeui zero,zero,4724 493fc: 00049d28 cmpgeui zero,zero,4724 49400: 00049d28 cmpgeui zero,zero,4724 49404: 00049d28 cmpgeui zero,zero,4724 49408: 00049d28 cmpgeui zero,zero,4724 4940c: 00049d28 cmpgeui zero,zero,4724 49410: 00049d28 cmpgeui zero,zero,4724 49414: 00049d28 cmpgeui zero,zero,4724 49418: 00049d28 cmpgeui zero,zero,4724 4941c: 00049d28 cmpgeui zero,zero,4724 49420: 00049ad8 cmpnei zero,zero,4715 49424: 00049d28 cmpgeui zero,zero,4724 49428: 00049d28 cmpgeui zero,zero,4724 4942c: 00049d28 cmpgeui zero,zero,4724 49430: 00049d28 cmpgeui zero,zero,4724 49434: 00049d28 cmpgeui zero,zero,4724 49438: 00049b34 movhi zero,4716 4943c: 00049d28 cmpgeui zero,zero,4724 49440: 00049d28 cmpgeui zero,zero,4724 49444: 00049ba8 cmpgeui zero,zero,4718 49448: 00049d28 cmpgeui zero,zero,4724 4944c: 00049d28 cmpgeui zero,zero,4724 49450: 00049d28 cmpgeui zero,zero,4724 49454: 00049d28 cmpgeui zero,zero,4724 49458: 00049d28 cmpgeui zero,zero,4724 4945c: 00049d28 cmpgeui zero,zero,4724 49460: 00049d28 cmpgeui zero,zero,4724 49464: 00049d28 cmpgeui zero,zero,4724 49468: 00049d28 cmpgeui zero,zero,4724 4946c: 00049d28 cmpgeui zero,zero,4724 49470: 00049950 cmplti zero,zero,4709 49474: 00049980 call 4998 <__alt_mem_onchip_memory2-0x3b668> 49478: 00049d28 cmpgeui zero,zero,4724 4947c: 00049d28 cmpgeui zero,zero,4724 49480: 00049d28 cmpgeui zero,zero,4724 49484: 00049cd0 cmplti zero,zero,4723 49488: 00049980 call 4998 <__alt_mem_onchip_memory2-0x3b668> 4948c: 00049d28 cmpgeui zero,zero,4724 49490: 00049d28 cmpgeui zero,zero,4724 49494: 00049828 cmpgeui zero,zero,4704 49498: 00049d28 cmpgeui zero,zero,4724 4949c: 0004983c xorhi zero,zero,4704 494a0: 00049874 movhi zero,4705 494a4: 00049574 movhi zero,4693 494a8: 0004981c xori zero,zero,4704 494ac: 00049d28 cmpgeui zero,zero,4724 494b0: 00049be8 cmpgeui zero,zero,4719 494b4: 00049d28 cmpgeui zero,zero,4724 494b8: 00049c34 movhi zero,4720 494bc: 00049d28 cmpgeui zero,zero,4724 494c0: 00049d28 cmpgeui zero,zero,4724 494c4: 000498f8 rdprs zero,zero,4707 494c8: 42000204 addi r8,r8,8 494cc: d8c02417 ldw r3,144(sp) 494d0: 1c07883a add r3,r3,r16 494d4: d8c02415 stw r3,144(sp) 494d8: 003f8c06 br 4930c <__alt_data_end+0xfffd730c> 494dc: d9402017 ldw r5,128(sp) 494e0: d9002117 ldw r4,132(sp) 494e4: 00445200 call 44520 <__swsetup_r> 494e8: 1003c11e bne r2,zero,4a3f0 <___vfiprintf_internal_r+0x1224> 494ec: d9402017 ldw r5,128(sp) 494f0: 00c00284 movi r3,10 494f4: 2880030b ldhu r2,12(r5) 494f8: 1080068c andi r2,r2,26 494fc: 10ff581e bne r2,r3,49260 <__alt_data_end+0xfffd7260> 49500: d8c02017 ldw r3,128(sp) 49504: 1880038f ldh r2,14(r3) 49508: 103f5516 blt r2,zero,49260 <__alt_data_end+0xfffd7260> 4950c: d9c02217 ldw r7,136(sp) 49510: d9002117 ldw r4,132(sp) 49514: a80d883a mov r6,r21 49518: 180b883a mov r5,r3 4951c: 004a6f40 call 4a6f4 <__sbprintf> 49520: dfc03517 ldw ra,212(sp) 49524: df003417 ldw fp,208(sp) 49528: ddc03317 ldw r23,204(sp) 4952c: dd803217 ldw r22,200(sp) 49530: dd403117 ldw r21,196(sp) 49534: dd003017 ldw r20,192(sp) 49538: dcc02f17 ldw r19,188(sp) 4953c: dc802e17 ldw r18,184(sp) 49540: dc402d17 ldw r17,180(sp) 49544: dc002c17 ldw r16,176(sp) 49548: dec03604 addi sp,sp,216 4954c: f800283a ret 49550: 004652c0 call 4652c <__sinit> 49554: 003f2f06 br 49214 <__alt_data_end+0xfffd7214> 49558: d8c02517 ldw r3,148(sp) 4955c: d8802215 stw r2,136(sp) 49560: 00c7c83a sub r3,zero,r3 49564: d8c02515 stw r3,148(sp) 49568: 8c400114 ori r17,r17,4 4956c: b0c00007 ldb r3,0(r22) 49570: 003f7306 br 49340 <__alt_data_end+0xfffd7340> 49574: 00800c04 movi r2,48 49578: d9402217 ldw r5,136(sp) 4957c: d8801d05 stb r2,116(sp) 49580: 00801e04 movi r2,120 49584: d8801d45 stb r2,117(sp) 49588: d8001d85 stb zero,118(sp) 4958c: b811883a mov r8,r23 49590: 28c00104 addi r3,r5,4 49594: 2cc00017 ldw r19,0(r5) 49598: 0029883a mov r20,zero 4959c: 88800094 ori r2,r17,2 495a0: 80032516 blt r16,zero,4a238 <___vfiprintf_internal_r+0x106c> 495a4: 00bfdfc4 movi r2,-129 495a8: 88a2703a and r17,r17,r2 495ac: d8c02215 stw r3,136(sp) 495b0: 8c400094 ori r17,r17,2 495b4: 98032a1e bne r19,zero,4a260 <___vfiprintf_internal_r+0x1094> 495b8: 00800174 movhi r2,5 495bc: 10888004 addi r2,r2,8704 495c0: d8802615 stw r2,152(sp) 495c4: 002b883a mov r21,zero 495c8: 8001741e bne r16,zero,49b9c <___vfiprintf_internal_r+0x9d0> 495cc: 0021883a mov r16,zero 495d0: 0029883a mov r20,zero 495d4: ddc01a04 addi r23,sp,104 495d8: 8027883a mov r19,r16 495dc: 8500010e bge r16,r20,495e4 <___vfiprintf_internal_r+0x418> 495e0: a027883a mov r19,r20 495e4: ad403fcc andi r21,r21,255 495e8: ad40201c xori r21,r21,128 495ec: ad7fe004 addi r21,r21,-128 495f0: a8000126 beq r21,zero,495f8 <___vfiprintf_internal_r+0x42c> 495f4: 9cc00044 addi r19,r19,1 495f8: 89c0008c andi r7,r17,2 495fc: 38000126 beq r7,zero,49604 <___vfiprintf_internal_r+0x438> 49600: 9cc00084 addi r19,r19,2 49604: 88c0210c andi r3,r17,132 49608: 1801dd1e bne r3,zero,49d80 <___vfiprintf_internal_r+0xbb4> 4960c: d9402517 ldw r5,148(sp) 49610: 2cebc83a sub r21,r5,r19 49614: 0541da0e bge zero,r21,49d80 <___vfiprintf_internal_r+0xbb4> 49618: 07000404 movi fp,16 4961c: d8801c17 ldw r2,112(sp) 49620: e543be0e bge fp,r21,4a51c <___vfiprintf_internal_r+0x1350> 49624: 01400174 movhi r5,5 49628: 2948e404 addi r5,r5,9104 4962c: dc002715 stw r16,156(sp) 49630: d9801b17 ldw r6,108(sp) 49634: a821883a mov r16,r21 49638: d9402315 stw r5,140(sp) 4963c: 028001c4 movi r10,7 49640: d9c02915 stw r7,164(sp) 49644: 182b883a mov r21,r3 49648: 00000506 br 49660 <___vfiprintf_internal_r+0x494> 4964c: 31000084 addi r4,r6,2 49650: 42000204 addi r8,r8,8 49654: 180d883a mov r6,r3 49658: 843ffc04 addi r16,r16,-16 4965c: e4000f0e bge fp,r16,4969c <___vfiprintf_internal_r+0x4d0> 49660: 01000174 movhi r4,5 49664: 10800404 addi r2,r2,16 49668: 30c00044 addi r3,r6,1 4966c: 2108e404 addi r4,r4,9104 49670: 41000015 stw r4,0(r8) 49674: 47000115 stw fp,4(r8) 49678: d8801c15 stw r2,112(sp) 4967c: d8c01b15 stw r3,108(sp) 49680: 50fff20e bge r10,r3,4964c <__alt_data_end+0xfffd764c> 49684: 1001b21e bne r2,zero,49d50 <___vfiprintf_internal_r+0xb84> 49688: 843ffc04 addi r16,r16,-16 4968c: 000d883a mov r6,zero 49690: 01000044 movi r4,1 49694: d811883a mov r8,sp 49698: e43ff116 blt fp,r16,49660 <__alt_data_end+0xfffd7660> 4969c: a807883a mov r3,r21 496a0: d9c02917 ldw r7,164(sp) 496a4: 802b883a mov r21,r16 496a8: dc002717 ldw r16,156(sp) 496ac: d9402317 ldw r5,140(sp) 496b0: a885883a add r2,r21,r2 496b4: 45400115 stw r21,4(r8) 496b8: 41400015 stw r5,0(r8) 496bc: d8801c15 stw r2,112(sp) 496c0: d9001b15 stw r4,108(sp) 496c4: 014001c4 movi r5,7 496c8: 29026216 blt r5,r4,4a054 <___vfiprintf_internal_r+0xe88> 496cc: d9801d87 ldb r6,118(sp) 496d0: 42000204 addi r8,r8,8 496d4: 21400044 addi r5,r4,1 496d8: 3001ae1e bne r6,zero,49d94 <___vfiprintf_internal_r+0xbc8> 496dc: 3801bb26 beq r7,zero,49dcc <___vfiprintf_internal_r+0xc00> 496e0: d9001d04 addi r4,sp,116 496e4: 10800084 addi r2,r2,2 496e8: 41000015 stw r4,0(r8) 496ec: 01000084 movi r4,2 496f0: 41000115 stw r4,4(r8) 496f4: d8801c15 stw r2,112(sp) 496f8: d9401b15 stw r5,108(sp) 496fc: 010001c4 movi r4,7 49700: 2142680e bge r4,r5,4a0a4 <___vfiprintf_internal_r+0xed8> 49704: 1002b11e bne r2,zero,4a1cc <___vfiprintf_internal_r+0x1000> 49708: 01802004 movi r6,128 4970c: 01400044 movi r5,1 49710: 0009883a mov r4,zero 49714: d811883a mov r8,sp 49718: 1981ae1e bne r3,r6,49dd4 <___vfiprintf_internal_r+0xc08> 4971c: d8c02517 ldw r3,148(sp) 49720: 1cf9c83a sub fp,r3,r19 49724: 0701ab0e bge zero,fp,49dd4 <___vfiprintf_internal_r+0xc08> 49728: 05400404 movi r21,16 4972c: af03a90e bge r21,fp,4a5d4 <___vfiprintf_internal_r+0x1408> 49730: 01400174 movhi r5,5 49734: 2948e004 addi r5,r5,9088 49738: d9402315 stw r5,140(sp) 4973c: 01c001c4 movi r7,7 49740: 00000506 br 49758 <___vfiprintf_internal_r+0x58c> 49744: 21800084 addi r6,r4,2 49748: 42000204 addi r8,r8,8 4974c: 1809883a mov r4,r3 49750: e73ffc04 addi fp,fp,-16 49754: af000d0e bge r21,fp,4978c <___vfiprintf_internal_r+0x5c0> 49758: 10800404 addi r2,r2,16 4975c: 20c00044 addi r3,r4,1 49760: 44800015 stw r18,0(r8) 49764: 45400115 stw r21,4(r8) 49768: d8801c15 stw r2,112(sp) 4976c: d8c01b15 stw r3,108(sp) 49770: 38fff40e bge r7,r3,49744 <__alt_data_end+0xfffd7744> 49774: 10022b1e bne r2,zero,4a024 <___vfiprintf_internal_r+0xe58> 49778: e73ffc04 addi fp,fp,-16 4977c: 01800044 movi r6,1 49780: 0009883a mov r4,zero 49784: d811883a mov r8,sp 49788: af3ff316 blt r21,fp,49758 <__alt_data_end+0xfffd7758> 4978c: d8c02317 ldw r3,140(sp) 49790: 1705883a add r2,r2,fp 49794: 47000115 stw fp,4(r8) 49798: 40c00015 stw r3,0(r8) 4979c: d8801c15 stw r2,112(sp) 497a0: d9801b15 stw r6,108(sp) 497a4: 00c001c4 movi r3,7 497a8: 19829416 blt r3,r6,4a1fc <___vfiprintf_internal_r+0x1030> 497ac: 8521c83a sub r16,r16,r20 497b0: 42000204 addi r8,r8,8 497b4: 31400044 addi r5,r6,1 497b8: 3009883a mov r4,r6 497bc: 04018716 blt zero,r16,49ddc <___vfiprintf_internal_r+0xc10> 497c0: a085883a add r2,r20,r2 497c4: 45c00015 stw r23,0(r8) 497c8: 45000115 stw r20,4(r8) 497cc: d8801c15 stw r2,112(sp) 497d0: d9401b15 stw r5,108(sp) 497d4: 00c001c4 movi r3,7 497d8: 1941c20e bge r3,r5,49ee4 <___vfiprintf_internal_r+0xd18> 497dc: 1002531e bne r2,zero,4a12c <___vfiprintf_internal_r+0xf60> 497e0: d8001b15 stw zero,108(sp) 497e4: 8c40010c andi r17,r17,4 497e8: 88023226 beq r17,zero,4a0b4 <___vfiprintf_internal_r+0xee8> 497ec: d9002517 ldw r4,148(sp) 497f0: 24e3c83a sub r17,r4,r19 497f4: 04432916 blt zero,r17,4a49c <___vfiprintf_internal_r+0x12d0> 497f8: d8802517 ldw r2,148(sp) 497fc: 14c0010e bge r2,r19,49804 <___vfiprintf_internal_r+0x638> 49800: 9805883a mov r2,r19 49804: d8c02417 ldw r3,144(sp) 49808: 1887883a add r3,r3,r2 4980c: d8c02415 stw r3,144(sp) 49810: d8001b15 stw zero,108(sp) 49814: d811883a mov r8,sp 49818: 003ea006 br 4929c <__alt_data_end+0xfffd729c> 4981c: 8c400814 ori r17,r17,32 49820: b0c00007 ldb r3,0(r22) 49824: 003ec606 br 49340 <__alt_data_end+0xfffd7340> 49828: b0c00007 ldb r3,0(r22) 4982c: 00801b04 movi r2,108 49830: 18832026 beq r3,r2,4a4b4 <___vfiprintf_internal_r+0x12e8> 49834: 8c400414 ori r17,r17,16 49838: 003ec106 br 49340 <__alt_data_end+0xfffd7340> 4983c: 9cc03fcc andi r19,r19,255 49840: b811883a mov r8,r23 49844: 9803981e bne r19,zero,4a6a8 <___vfiprintf_internal_r+0x14dc> 49848: 8880080c andi r2,r17,32 4984c: 1002be26 beq r2,zero,4a348 <___vfiprintf_internal_r+0x117c> 49850: d9002217 ldw r4,136(sp) 49854: d9402417 ldw r5,144(sp) 49858: 20800017 ldw r2,0(r4) 4985c: 2807d7fa srai r3,r5,31 49860: 21000104 addi r4,r4,4 49864: d9002215 stw r4,136(sp) 49868: 11400015 stw r5,0(r2) 4986c: 10c00115 stw r3,4(r2) 49870: 003e8a06 br 4929c <__alt_data_end+0xfffd729c> 49874: 9cc03fcc andi r19,r19,255 49878: b811883a mov r8,r23 4987c: 9803871e bne r19,zero,4a69c <___vfiprintf_internal_r+0x14d0> 49880: 8880080c andi r2,r17,32 49884: 10009a26 beq r2,zero,49af0 <___vfiprintf_internal_r+0x924> 49888: d9002217 ldw r4,136(sp) 4988c: d8001d85 stb zero,118(sp) 49890: 20800204 addi r2,r4,8 49894: 24c00017 ldw r19,0(r4) 49898: 25000117 ldw r20,4(r4) 4989c: 8002a416 blt r16,zero,4a330 <___vfiprintf_internal_r+0x1164> 498a0: 013fdfc4 movi r4,-129 498a4: 9d06b03a or r3,r19,r20 498a8: d8802215 stw r2,136(sp) 498ac: 8922703a and r17,r17,r4 498b0: 18009b26 beq r3,zero,49b20 <___vfiprintf_internal_r+0x954> 498b4: 002b883a mov r21,zero 498b8: ddc01a04 addi r23,sp,104 498bc: 9806d0fa srli r3,r19,3 498c0: a008977a slli r4,r20,29 498c4: a028d0fa srli r20,r20,3 498c8: 9cc001cc andi r19,r19,7 498cc: 98800c04 addi r2,r19,48 498d0: bdffffc4 addi r23,r23,-1 498d4: 20e6b03a or r19,r4,r3 498d8: b8800005 stb r2,0(r23) 498dc: 9d06b03a or r3,r19,r20 498e0: 183ff61e bne r3,zero,498bc <__alt_data_end+0xfffd78bc> 498e4: 88c0004c andi r3,r17,1 498e8: 18021f1e bne r3,zero,4a168 <___vfiprintf_internal_r+0xf9c> 498ec: d9401e17 ldw r5,120(sp) 498f0: 2de9c83a sub r20,r5,r23 498f4: 003f3806 br 495d8 <__alt_data_end+0xfffd75d8> 498f8: 9cc03fcc andi r19,r19,255 498fc: b811883a mov r8,r23 49900: 98034f1e bne r19,zero,4a640 <___vfiprintf_internal_r+0x1474> 49904: 00800174 movhi r2,5 49908: 10888004 addi r2,r2,8704 4990c: d8802615 stw r2,152(sp) 49910: 8880080c andi r2,r17,32 49914: 1000ac26 beq r2,zero,49bc8 <___vfiprintf_internal_r+0x9fc> 49918: d9002217 ldw r4,136(sp) 4991c: 24c00017 ldw r19,0(r4) 49920: 25000117 ldw r20,4(r4) 49924: 21000204 addi r4,r4,8 49928: d9002215 stw r4,136(sp) 4992c: 8880004c andi r2,r17,1 49930: 1001e726 beq r2,zero,4a0d0 <___vfiprintf_internal_r+0xf04> 49934: 9d04b03a or r2,r19,r20 49938: 10025c1e bne r2,zero,4a2ac <___vfiprintf_internal_r+0x10e0> 4993c: d8001d85 stb zero,118(sp) 49940: 80024416 blt r16,zero,4a254 <___vfiprintf_internal_r+0x1088> 49944: 00bfdfc4 movi r2,-129 49948: 88a2703a and r17,r17,r2 4994c: 003f1d06 br 495c4 <__alt_data_end+0xfffd75c4> 49950: d8c02217 ldw r3,136(sp) 49954: 04c00044 movi r19,1 49958: b811883a mov r8,r23 4995c: 18800017 ldw r2,0(r3) 49960: 18c00104 addi r3,r3,4 49964: d8001d85 stb zero,118(sp) 49968: d8801005 stb r2,64(sp) 4996c: d8c02215 stw r3,136(sp) 49970: 9829883a mov r20,r19 49974: ddc01004 addi r23,sp,64 49978: 0021883a mov r16,zero 4997c: 003f1e06 br 495f8 <__alt_data_end+0xfffd75f8> 49980: 9cc03fcc andi r19,r19,255 49984: b811883a mov r8,r23 49988: 9803331e bne r19,zero,4a658 <___vfiprintf_internal_r+0x148c> 4998c: 8880080c andi r2,r17,32 49990: 10004826 beq r2,zero,49ab4 <___vfiprintf_internal_r+0x8e8> 49994: d9002217 ldw r4,136(sp) 49998: 20800117 ldw r2,4(r4) 4999c: 24c00017 ldw r19,0(r4) 499a0: 21000204 addi r4,r4,8 499a4: d9002215 stw r4,136(sp) 499a8: 1029883a mov r20,r2 499ac: 10024c16 blt r2,zero,4a2e0 <___vfiprintf_internal_r+0x1114> 499b0: dd401d83 ldbu r21,118(sp) 499b4: 80007116 blt r16,zero,49b7c <___vfiprintf_internal_r+0x9b0> 499b8: 00ffdfc4 movi r3,-129 499bc: 9d04b03a or r2,r19,r20 499c0: 88e2703a and r17,r17,r3 499c4: 1000d126 beq r2,zero,49d0c <___vfiprintf_internal_r+0xb40> 499c8: a0023526 beq r20,zero,4a2a0 <___vfiprintf_internal_r+0x10d4> 499cc: ddc01a04 addi r23,sp,104 499d0: 4039883a mov fp,r8 499d4: 9809883a mov r4,r19 499d8: a00b883a mov r5,r20 499dc: 01800284 movi r6,10 499e0: 000f883a mov r7,zero 499e4: 004c2800 call 4c280 <__umoddi3> 499e8: 10800c04 addi r2,r2,48 499ec: bdffffc4 addi r23,r23,-1 499f0: 9809883a mov r4,r19 499f4: a00b883a mov r5,r20 499f8: b8800005 stb r2,0(r23) 499fc: 01800284 movi r6,10 49a00: 000f883a mov r7,zero 49a04: 004bc840 call 4bc84 <__udivdi3> 49a08: 1027883a mov r19,r2 49a0c: 10c4b03a or r2,r2,r3 49a10: 1829883a mov r20,r3 49a14: 103fef1e bne r2,zero,499d4 <__alt_data_end+0xfffd79d4> 49a18: d9001e17 ldw r4,120(sp) 49a1c: e011883a mov r8,fp 49a20: 25e9c83a sub r20,r4,r23 49a24: 003eec06 br 495d8 <__alt_data_end+0xfffd75d8> 49a28: d8802307 ldb r2,140(sp) 49a2c: 1002361e bne r2,zero,4a308 <___vfiprintf_internal_r+0x113c> 49a30: 00c00804 movi r3,32 49a34: d8c02305 stb r3,140(sp) 49a38: 04c00044 movi r19,1 49a3c: b0c00007 ldb r3,0(r22) 49a40: 003e3f06 br 49340 <__alt_data_end+0xfffd7340> 49a44: 8c400054 ori r17,r17,1 49a48: b0c00007 ldb r3,0(r22) 49a4c: 003e3c06 br 49340 <__alt_data_end+0xfffd7340> 49a50: 8c402014 ori r17,r17,128 49a54: b0c00007 ldb r3,0(r22) 49a58: 003e3906 br 49340 <__alt_data_end+0xfffd7340> 49a5c: dc002715 stw r16,156(sp) 49a60: d8002515 stw zero,148(sp) 49a64: 1f3ff404 addi fp,r3,-48 49a68: 0009883a mov r4,zero 49a6c: b021883a mov r16,r22 49a70: 01400284 movi r5,10 49a74: 004c9f80 call 4c9f8 <__mulsi3> 49a78: 80c00007 ldb r3,0(r16) 49a7c: e089883a add r4,fp,r2 49a80: b5800044 addi r22,r22,1 49a84: 1f3ff404 addi fp,r3,-48 49a88: b021883a mov r16,r22 49a8c: af3ff82e bgeu r21,fp,49a70 <__alt_data_end+0xfffd7a70> 49a90: d9002515 stw r4,148(sp) 49a94: dc002717 ldw r16,156(sp) 49a98: 003e2a06 br 49344 <__alt_data_end+0xfffd7344> 49a9c: 9cc03fcc andi r19,r19,255 49aa0: b811883a mov r8,r23 49aa4: 9802e91e bne r19,zero,4a64c <___vfiprintf_internal_r+0x1480> 49aa8: 8c400414 ori r17,r17,16 49aac: 8880080c andi r2,r17,32 49ab0: 103fb81e bne r2,zero,49994 <__alt_data_end+0xfffd7994> 49ab4: 8880040c andi r2,r17,16 49ab8: 10022e26 beq r2,zero,4a374 <___vfiprintf_internal_r+0x11a8> 49abc: d9402217 ldw r5,136(sp) 49ac0: 2cc00017 ldw r19,0(r5) 49ac4: 29400104 addi r5,r5,4 49ac8: d9402215 stw r5,136(sp) 49acc: 9829d7fa srai r20,r19,31 49ad0: a005883a mov r2,r20 49ad4: 003fb506 br 499ac <__alt_data_end+0xfffd79ac> 49ad8: 9cc03fcc andi r19,r19,255 49adc: b811883a mov r8,r23 49ae0: 9802fa1e bne r19,zero,4a6cc <___vfiprintf_internal_r+0x1500> 49ae4: 8c400414 ori r17,r17,16 49ae8: 8880080c andi r2,r17,32 49aec: 103f661e bne r2,zero,49888 <__alt_data_end+0xfffd7888> 49af0: 8880040c andi r2,r17,16 49af4: 10020626 beq r2,zero,4a310 <___vfiprintf_internal_r+0x1144> 49af8: d9402217 ldw r5,136(sp) 49afc: d8001d85 stb zero,118(sp) 49b00: 0029883a mov r20,zero 49b04: 28800104 addi r2,r5,4 49b08: 2cc00017 ldw r19,0(r5) 49b0c: 80020816 blt r16,zero,4a330 <___vfiprintf_internal_r+0x1164> 49b10: 00ffdfc4 movi r3,-129 49b14: d8802215 stw r2,136(sp) 49b18: 88e2703a and r17,r17,r3 49b1c: 983f651e bne r19,zero,498b4 <__alt_data_end+0xfffd78b4> 49b20: 002b883a mov r21,zero 49b24: 8002cf26 beq r16,zero,4a664 <___vfiprintf_internal_r+0x1498> 49b28: 0027883a mov r19,zero 49b2c: 0029883a mov r20,zero 49b30: 003f6106 br 498b8 <__alt_data_end+0xfffd78b8> 49b34: 9cc03fcc andi r19,r19,255 49b38: b811883a mov r8,r23 49b3c: 9802e01e bne r19,zero,4a6c0 <___vfiprintf_internal_r+0x14f4> 49b40: 8c400414 ori r17,r17,16 49b44: 8880080c andi r2,r17,32 49b48: 1000641e bne r2,zero,49cdc <___vfiprintf_internal_r+0xb10> 49b4c: 8880040c andi r2,r17,16 49b50: 1001c81e bne r2,zero,4a274 <___vfiprintf_internal_r+0x10a8> 49b54: 8880100c andi r2,r17,64 49b58: d8001d85 stb zero,118(sp) 49b5c: 1002281e bne r2,zero,4a400 <___vfiprintf_internal_r+0x1234> 49b60: d9002217 ldw r4,136(sp) 49b64: 0029883a mov r20,zero 49b68: 20800104 addi r2,r4,4 49b6c: 24c00017 ldw r19,0(r4) 49b70: 8001c60e bge r16,zero,4a28c <___vfiprintf_internal_r+0x10c0> 49b74: d8802215 stw r2,136(sp) 49b78: 002b883a mov r21,zero 49b7c: 9d04b03a or r2,r19,r20 49b80: 103f911e bne r2,zero,499c8 <__alt_data_end+0xfffd79c8> 49b84: 00800044 movi r2,1 49b88: 10803fcc andi r2,r2,255 49b8c: 00c00044 movi r3,1 49b90: 10c05f26 beq r2,r3,49d10 <___vfiprintf_internal_r+0xb44> 49b94: 00c00084 movi r3,2 49b98: 10ffe31e bne r2,r3,49b28 <__alt_data_end+0xfffd7b28> 49b9c: 0027883a mov r19,zero 49ba0: 0029883a mov r20,zero 49ba4: 00015106 br 4a0ec <___vfiprintf_internal_r+0xf20> 49ba8: 9cc03fcc andi r19,r19,255 49bac: b811883a mov r8,r23 49bb0: 9802c01e bne r19,zero,4a6b4 <___vfiprintf_internal_r+0x14e8> 49bb4: 01400174 movhi r5,5 49bb8: 29487b04 addi r5,r5,8684 49bbc: d9402615 stw r5,152(sp) 49bc0: 8880080c andi r2,r17,32 49bc4: 103f541e bne r2,zero,49918 <__alt_data_end+0xfffd7918> 49bc8: 8880040c andi r2,r17,16 49bcc: 1001f226 beq r2,zero,4a398 <___vfiprintf_internal_r+0x11cc> 49bd0: d9402217 ldw r5,136(sp) 49bd4: 0029883a mov r20,zero 49bd8: 2cc00017 ldw r19,0(r5) 49bdc: 29400104 addi r5,r5,4 49be0: d9402215 stw r5,136(sp) 49be4: 003f5106 br 4992c <__alt_data_end+0xfffd792c> 49be8: d8c02217 ldw r3,136(sp) 49bec: b811883a mov r8,r23 49bf0: d8001d85 stb zero,118(sp) 49bf4: 1dc00017 ldw r23,0(r3) 49bf8: 1f000104 addi fp,r3,4 49bfc: b8025926 beq r23,zero,4a564 <___vfiprintf_internal_r+0x1398> 49c00: 80023316 blt r16,zero,4a4d0 <___vfiprintf_internal_r+0x1304> 49c04: 800d883a mov r6,r16 49c08: 000b883a mov r5,zero 49c0c: b809883a mov r4,r23 49c10: da002a15 stw r8,168(sp) 49c14: 00475dc0 call 475dc 49c18: da002a17 ldw r8,168(sp) 49c1c: 10026826 beq r2,zero,4a5c0 <___vfiprintf_internal_r+0x13f4> 49c20: 15e9c83a sub r20,r2,r23 49c24: dd401d83 ldbu r21,118(sp) 49c28: df002215 stw fp,136(sp) 49c2c: 0021883a mov r16,zero 49c30: 003e6906 br 495d8 <__alt_data_end+0xfffd75d8> 49c34: 9cc03fcc andi r19,r19,255 49c38: b811883a mov r8,r23 49c3c: 983fc126 beq r19,zero,49b44 <__alt_data_end+0xfffd7b44> 49c40: d8c02303 ldbu r3,140(sp) 49c44: d8c01d85 stb r3,118(sp) 49c48: 003fbe06 br 49b44 <__alt_data_end+0xfffd7b44> 49c4c: d9002217 ldw r4,136(sp) 49c50: d9402217 ldw r5,136(sp) 49c54: 21000017 ldw r4,0(r4) 49c58: 28800104 addi r2,r5,4 49c5c: d9002515 stw r4,148(sp) 49c60: 203e3d16 blt r4,zero,49558 <__alt_data_end+0xfffd7558> 49c64: d8802215 stw r2,136(sp) 49c68: b0c00007 ldb r3,0(r22) 49c6c: 003db406 br 49340 <__alt_data_end+0xfffd7340> 49c70: 00c00ac4 movi r3,43 49c74: d8c02305 stb r3,140(sp) 49c78: 04c00044 movi r19,1 49c7c: b0c00007 ldb r3,0(r22) 49c80: 003daf06 br 49340 <__alt_data_end+0xfffd7340> 49c84: b0c00007 ldb r3,0(r22) 49c88: 01000a84 movi r4,42 49c8c: b4000044 addi r16,r22,1 49c90: 19025e26 beq r3,r4,4a60c <___vfiprintf_internal_r+0x1440> 49c94: 1f3ff404 addi fp,r3,-48 49c98: 0009883a mov r4,zero 49c9c: af025236 bltu r21,fp,4a5e8 <___vfiprintf_internal_r+0x141c> 49ca0: 01400284 movi r5,10 49ca4: 004c9f80 call 4c9f8 <__mulsi3> 49ca8: 80c00007 ldb r3,0(r16) 49cac: 1709883a add r4,r2,fp 49cb0: 85800044 addi r22,r16,1 49cb4: 1f3ff404 addi fp,r3,-48 49cb8: b021883a mov r16,r22 49cbc: af3ff82e bgeu r21,fp,49ca0 <__alt_data_end+0xfffd7ca0> 49cc0: 2021883a mov r16,r4 49cc4: 203d9f0e bge r4,zero,49344 <__alt_data_end+0xfffd7344> 49cc8: 043fffc4 movi r16,-1 49ccc: 003d9d06 br 49344 <__alt_data_end+0xfffd7344> 49cd0: 8c401014 ori r17,r17,64 49cd4: b0c00007 ldb r3,0(r22) 49cd8: 003d9906 br 49340 <__alt_data_end+0xfffd7340> 49cdc: d9002217 ldw r4,136(sp) 49ce0: d8001d85 stb zero,118(sp) 49ce4: 20c00204 addi r3,r4,8 49ce8: 24c00017 ldw r19,0(r4) 49cec: 25000117 ldw r20,4(r4) 49cf0: 8001e716 blt r16,zero,4a490 <___vfiprintf_internal_r+0x12c4> 49cf4: 013fdfc4 movi r4,-129 49cf8: 9d04b03a or r2,r19,r20 49cfc: d8c02215 stw r3,136(sp) 49d00: 8922703a and r17,r17,r4 49d04: 002b883a mov r21,zero 49d08: 103f2f1e bne r2,zero,499c8 <__alt_data_end+0xfffd79c8> 49d0c: 803e2f26 beq r16,zero,495cc <__alt_data_end+0xfffd75cc> 49d10: 0027883a mov r19,zero 49d14: 9cc00c04 addi r19,r19,48 49d18: dcc019c5 stb r19,103(sp) 49d1c: dd002817 ldw r20,160(sp) 49d20: ddc019c4 addi r23,sp,103 49d24: 003e2c06 br 495d8 <__alt_data_end+0xfffd75d8> 49d28: 9cc03fcc andi r19,r19,255 49d2c: b811883a mov r8,r23 49d30: 9802571e bne r19,zero,4a690 <___vfiprintf_internal_r+0x14c4> 49d34: 18005726 beq r3,zero,49e94 <___vfiprintf_internal_r+0xcc8> 49d38: 04c00044 movi r19,1 49d3c: d8c01005 stb r3,64(sp) 49d40: d8001d85 stb zero,118(sp) 49d44: 9829883a mov r20,r19 49d48: ddc01004 addi r23,sp,64 49d4c: 003f0a06 br 49978 <__alt_data_end+0xfffd7978> 49d50: d9402017 ldw r5,128(sp) 49d54: d9002117 ldw r4,132(sp) 49d58: d9801a04 addi r6,sp,104 49d5c: da802a15 stw r10,168(sp) 49d60: 00490b80 call 490b8 <__sprint_r.part.0> 49d64: da802a17 ldw r10,168(sp) 49d68: 1000501e bne r2,zero,49eac <___vfiprintf_internal_r+0xce0> 49d6c: d9801b17 ldw r6,108(sp) 49d70: d8801c17 ldw r2,112(sp) 49d74: d811883a mov r8,sp 49d78: 31000044 addi r4,r6,1 49d7c: 003e3606 br 49658 <__alt_data_end+0xfffd7658> 49d80: d9001b17 ldw r4,108(sp) 49d84: d8801c17 ldw r2,112(sp) 49d88: 21400044 addi r5,r4,1 49d8c: d9801d87 ldb r6,118(sp) 49d90: 303e5226 beq r6,zero,496dc <__alt_data_end+0xfffd76dc> 49d94: 01800044 movi r6,1 49d98: d9001d84 addi r4,sp,118 49d9c: 1185883a add r2,r2,r6 49da0: 41000015 stw r4,0(r8) 49da4: 41800115 stw r6,4(r8) 49da8: d8801c15 stw r2,112(sp) 49dac: d9401b15 stw r5,108(sp) 49db0: 010001c4 movi r4,7 49db4: 2140b00e bge r4,r5,4a078 <___vfiprintf_internal_r+0xeac> 49db8: 1000f61e bne r2,zero,4a194 <___vfiprintf_internal_r+0xfc8> 49dbc: 3800b31e bne r7,zero,4a08c <___vfiprintf_internal_r+0xec0> 49dc0: 0009883a mov r4,zero 49dc4: 300b883a mov r5,r6 49dc8: d811883a mov r8,sp 49dcc: 01802004 movi r6,128 49dd0: 19be5226 beq r3,r6,4971c <__alt_data_end+0xfffd771c> 49dd4: 8521c83a sub r16,r16,r20 49dd8: 043e790e bge zero,r16,497c0 <__alt_data_end+0xfffd77c0> 49ddc: 05400404 movi r21,16 49de0: ac01b00e bge r21,r16,4a4a4 <___vfiprintf_internal_r+0x12d8> 49de4: 01400174 movhi r5,5 49de8: 2948e004 addi r5,r5,9088 49dec: d9402315 stw r5,140(sp) 49df0: 070001c4 movi fp,7 49df4: 00000506 br 49e0c <___vfiprintf_internal_r+0xc40> 49df8: 21400084 addi r5,r4,2 49dfc: 42000204 addi r8,r8,8 49e00: 1809883a mov r4,r3 49e04: 843ffc04 addi r16,r16,-16 49e08: ac000d0e bge r21,r16,49e40 <___vfiprintf_internal_r+0xc74> 49e0c: 10800404 addi r2,r2,16 49e10: 20c00044 addi r3,r4,1 49e14: 44800015 stw r18,0(r8) 49e18: 45400115 stw r21,4(r8) 49e1c: d8801c15 stw r2,112(sp) 49e20: d8c01b15 stw r3,108(sp) 49e24: e0fff40e bge fp,r3,49df8 <__alt_data_end+0xfffd7df8> 49e28: 1000101e bne r2,zero,49e6c <___vfiprintf_internal_r+0xca0> 49e2c: 843ffc04 addi r16,r16,-16 49e30: 01400044 movi r5,1 49e34: 0009883a mov r4,zero 49e38: d811883a mov r8,sp 49e3c: ac3ff316 blt r21,r16,49e0c <__alt_data_end+0xfffd7e0c> 49e40: d8c02317 ldw r3,140(sp) 49e44: 1405883a add r2,r2,r16 49e48: 44000115 stw r16,4(r8) 49e4c: 40c00015 stw r3,0(r8) 49e50: d8801c15 stw r2,112(sp) 49e54: d9401b15 stw r5,108(sp) 49e58: 00c001c4 movi r3,7 49e5c: 19401916 blt r3,r5,49ec4 <___vfiprintf_internal_r+0xcf8> 49e60: 42000204 addi r8,r8,8 49e64: 29400044 addi r5,r5,1 49e68: 003e5506 br 497c0 <__alt_data_end+0xfffd77c0> 49e6c: d9402017 ldw r5,128(sp) 49e70: d9002117 ldw r4,132(sp) 49e74: d9801a04 addi r6,sp,104 49e78: 00490b80 call 490b8 <__sprint_r.part.0> 49e7c: 10000b1e bne r2,zero,49eac <___vfiprintf_internal_r+0xce0> 49e80: d9001b17 ldw r4,108(sp) 49e84: d8801c17 ldw r2,112(sp) 49e88: d811883a mov r8,sp 49e8c: 21400044 addi r5,r4,1 49e90: 003fdc06 br 49e04 <__alt_data_end+0xfffd7e04> 49e94: d8801c17 ldw r2,112(sp) 49e98: 10000426 beq r2,zero,49eac <___vfiprintf_internal_r+0xce0> 49e9c: d9402017 ldw r5,128(sp) 49ea0: d9002117 ldw r4,132(sp) 49ea4: d9801a04 addi r6,sp,104 49ea8: 00490b80 call 490b8 <__sprint_r.part.0> 49eac: d9402017 ldw r5,128(sp) 49eb0: 2880030b ldhu r2,12(r5) 49eb4: 1080100c andi r2,r2,64 49eb8: 10014d1e bne r2,zero,4a3f0 <___vfiprintf_internal_r+0x1224> 49ebc: d8802417 ldw r2,144(sp) 49ec0: 003d9706 br 49520 <__alt_data_end+0xfffd7520> 49ec4: 1000d21e bne r2,zero,4a210 <___vfiprintf_internal_r+0x1044> 49ec8: 00c00044 movi r3,1 49ecc: a005883a mov r2,r20 49ed0: ddc00015 stw r23,0(sp) 49ed4: dd000115 stw r20,4(sp) 49ed8: dd001c15 stw r20,112(sp) 49edc: d8c01b15 stw r3,108(sp) 49ee0: d811883a mov r8,sp 49ee4: 42000204 addi r8,r8,8 49ee8: 8c40010c andi r17,r17,4 49eec: 88004026 beq r17,zero,49ff0 <___vfiprintf_internal_r+0xe24> 49ef0: d9002517 ldw r4,148(sp) 49ef4: 24e3c83a sub r17,r4,r19 49ef8: 04403d0e bge zero,r17,49ff0 <___vfiprintf_internal_r+0xe24> 49efc: 04000404 movi r16,16 49f00: 8441a90e bge r16,r17,4a5a8 <___vfiprintf_internal_r+0x13dc> 49f04: 00c00174 movhi r3,5 49f08: 18c8e404 addi r3,r3,9104 49f0c: d9001b17 ldw r4,108(sp) 49f10: d8c02315 stw r3,140(sp) 49f14: 050001c4 movi r20,7 49f18: dd402117 ldw r21,132(sp) 49f1c: ddc02017 ldw r23,128(sp) 49f20: 00000506 br 49f38 <___vfiprintf_internal_r+0xd6c> 49f24: 21400084 addi r5,r4,2 49f28: 42000204 addi r8,r8,8 49f2c: 1809883a mov r4,r3 49f30: 8c7ffc04 addi r17,r17,-16 49f34: 84400f0e bge r16,r17,49f74 <___vfiprintf_internal_r+0xda8> 49f38: 01400174 movhi r5,5 49f3c: 10800404 addi r2,r2,16 49f40: 20c00044 addi r3,r4,1 49f44: 2948e404 addi r5,r5,9104 49f48: 41400015 stw r5,0(r8) 49f4c: 44000115 stw r16,4(r8) 49f50: d8801c15 stw r2,112(sp) 49f54: d8c01b15 stw r3,108(sp) 49f58: a0fff20e bge r20,r3,49f24 <__alt_data_end+0xfffd7f24> 49f5c: 1000141e bne r2,zero,49fb0 <___vfiprintf_internal_r+0xde4> 49f60: 8c7ffc04 addi r17,r17,-16 49f64: 01400044 movi r5,1 49f68: 0009883a mov r4,zero 49f6c: d811883a mov r8,sp 49f70: 847ff116 blt r16,r17,49f38 <__alt_data_end+0xfffd7f38> 49f74: d8c02317 ldw r3,140(sp) 49f78: 1445883a add r2,r2,r17 49f7c: 44400115 stw r17,4(r8) 49f80: 40c00015 stw r3,0(r8) 49f84: d8801c15 stw r2,112(sp) 49f88: d9401b15 stw r5,108(sp) 49f8c: 00c001c4 movi r3,7 49f90: 1940170e bge r3,r5,49ff0 <___vfiprintf_internal_r+0xe24> 49f94: 1000101e bne r2,zero,49fd8 <___vfiprintf_internal_r+0xe0c> 49f98: d8802517 ldw r2,148(sp) 49f9c: 14c11616 blt r2,r19,4a3f8 <___vfiprintf_internal_r+0x122c> 49fa0: d9002417 ldw r4,144(sp) 49fa4: 2089883a add r4,r4,r2 49fa8: d9002415 stw r4,144(sp) 49fac: 003e1806 br 49810 <__alt_data_end+0xfffd7810> 49fb0: d9801a04 addi r6,sp,104 49fb4: b80b883a mov r5,r23 49fb8: a809883a mov r4,r21 49fbc: 00490b80 call 490b8 <__sprint_r.part.0> 49fc0: 103fba1e bne r2,zero,49eac <__alt_data_end+0xfffd7eac> 49fc4: d9001b17 ldw r4,108(sp) 49fc8: d8801c17 ldw r2,112(sp) 49fcc: d811883a mov r8,sp 49fd0: 21400044 addi r5,r4,1 49fd4: 003fd606 br 49f30 <__alt_data_end+0xfffd7f30> 49fd8: d9402017 ldw r5,128(sp) 49fdc: d9002117 ldw r4,132(sp) 49fe0: d9801a04 addi r6,sp,104 49fe4: 00490b80 call 490b8 <__sprint_r.part.0> 49fe8: 103fb01e bne r2,zero,49eac <__alt_data_end+0xfffd7eac> 49fec: d8801c17 ldw r2,112(sp) 49ff0: d8c02517 ldw r3,148(sp) 49ff4: 1cc0010e bge r3,r19,49ffc <___vfiprintf_internal_r+0xe30> 49ff8: 9807883a mov r3,r19 49ffc: d9002417 ldw r4,144(sp) 4a000: 20c9883a add r4,r4,r3 4a004: d9002415 stw r4,144(sp) 4a008: 103e0126 beq r2,zero,49810 <__alt_data_end+0xfffd7810> 4a00c: d9402017 ldw r5,128(sp) 4a010: d9002117 ldw r4,132(sp) 4a014: d9801a04 addi r6,sp,104 4a018: 00490b80 call 490b8 <__sprint_r.part.0> 4a01c: 103dfc26 beq r2,zero,49810 <__alt_data_end+0xfffd7810> 4a020: 003fa206 br 49eac <__alt_data_end+0xfffd7eac> 4a024: d9402017 ldw r5,128(sp) 4a028: d9002117 ldw r4,132(sp) 4a02c: d9801a04 addi r6,sp,104 4a030: d9c02b15 stw r7,172(sp) 4a034: 00490b80 call 490b8 <__sprint_r.part.0> 4a038: d9c02b17 ldw r7,172(sp) 4a03c: 103f9b1e bne r2,zero,49eac <__alt_data_end+0xfffd7eac> 4a040: d9001b17 ldw r4,108(sp) 4a044: d8801c17 ldw r2,112(sp) 4a048: d811883a mov r8,sp 4a04c: 21800044 addi r6,r4,1 4a050: 003dbf06 br 49750 <__alt_data_end+0xfffd7750> 4a054: 1000d81e bne r2,zero,4a3b8 <___vfiprintf_internal_r+0x11ec> 4a058: d9001d87 ldb r4,118(sp) 4a05c: 20000a26 beq r4,zero,4a088 <___vfiprintf_internal_r+0xebc> 4a060: 00800044 movi r2,1 4a064: d9001d84 addi r4,sp,118 4a068: 100b883a mov r5,r2 4a06c: d9000015 stw r4,0(sp) 4a070: d8800115 stw r2,4(sp) 4a074: d811883a mov r8,sp 4a078: 2809883a mov r4,r5 4a07c: 42000204 addi r8,r8,8 4a080: 29400044 addi r5,r5,1 4a084: 003d9506 br 496dc <__alt_data_end+0xfffd76dc> 4a088: 3800fd26 beq r7,zero,4a480 <___vfiprintf_internal_r+0x12b4> 4a08c: 00800084 movi r2,2 4a090: d9001d04 addi r4,sp,116 4a094: d9000015 stw r4,0(sp) 4a098: d8800115 stw r2,4(sp) 4a09c: 01400044 movi r5,1 4a0a0: d811883a mov r8,sp 4a0a4: 2809883a mov r4,r5 4a0a8: 42000204 addi r8,r8,8 4a0ac: 29400044 addi r5,r5,1 4a0b0: 003f4606 br 49dcc <__alt_data_end+0xfffd7dcc> 4a0b4: d8802517 ldw r2,148(sp) 4a0b8: 14c0010e bge r2,r19,4a0c0 <___vfiprintf_internal_r+0xef4> 4a0bc: 9805883a mov r2,r19 4a0c0: d9402417 ldw r5,144(sp) 4a0c4: 288b883a add r5,r5,r2 4a0c8: d9402415 stw r5,144(sp) 4a0cc: 003dd006 br 49810 <__alt_data_end+0xfffd7810> 4a0d0: d8001d85 stb zero,118(sp) 4a0d4: 80005d16 blt r16,zero,4a24c <___vfiprintf_internal_r+0x1080> 4a0d8: 00ffdfc4 movi r3,-129 4a0dc: 9d04b03a or r2,r19,r20 4a0e0: 88e2703a and r17,r17,r3 4a0e4: 103d3726 beq r2,zero,495c4 <__alt_data_end+0xfffd75c4> 4a0e8: 002b883a mov r21,zero 4a0ec: d9002617 ldw r4,152(sp) 4a0f0: ddc01a04 addi r23,sp,104 4a0f4: 988003cc andi r2,r19,15 4a0f8: a006973a slli r3,r20,28 4a0fc: 2085883a add r2,r4,r2 4a100: 9826d13a srli r19,r19,4 4a104: 10800003 ldbu r2,0(r2) 4a108: a028d13a srli r20,r20,4 4a10c: bdffffc4 addi r23,r23,-1 4a110: 1ce6b03a or r19,r3,r19 4a114: b8800005 stb r2,0(r23) 4a118: 9d04b03a or r2,r19,r20 4a11c: 103ff51e bne r2,zero,4a0f4 <__alt_data_end+0xfffd80f4> 4a120: d8801e17 ldw r2,120(sp) 4a124: 15e9c83a sub r20,r2,r23 4a128: 003d2b06 br 495d8 <__alt_data_end+0xfffd75d8> 4a12c: d9402017 ldw r5,128(sp) 4a130: d9002117 ldw r4,132(sp) 4a134: d9801a04 addi r6,sp,104 4a138: 00490b80 call 490b8 <__sprint_r.part.0> 4a13c: 103f5b1e bne r2,zero,49eac <__alt_data_end+0xfffd7eac> 4a140: d8801c17 ldw r2,112(sp) 4a144: d811883a mov r8,sp 4a148: 003f6706 br 49ee8 <__alt_data_end+0xfffd7ee8> 4a14c: d9402017 ldw r5,128(sp) 4a150: d9002117 ldw r4,132(sp) 4a154: d9801a04 addi r6,sp,104 4a158: 00490b80 call 490b8 <__sprint_r.part.0> 4a15c: 103f531e bne r2,zero,49eac <__alt_data_end+0xfffd7eac> 4a160: d811883a mov r8,sp 4a164: 003cd906 br 494cc <__alt_data_end+0xfffd74cc> 4a168: 10803fcc andi r2,r2,255 4a16c: 1080201c xori r2,r2,128 4a170: 10bfe004 addi r2,r2,-128 4a174: 00c00c04 movi r3,48 4a178: 10ffe926 beq r2,r3,4a120 <__alt_data_end+0xfffd8120> 4a17c: b8ffffc5 stb r3,-1(r23) 4a180: d8c01e17 ldw r3,120(sp) 4a184: b8bfffc4 addi r2,r23,-1 4a188: 102f883a mov r23,r2 4a18c: 18a9c83a sub r20,r3,r2 4a190: 003d1106 br 495d8 <__alt_data_end+0xfffd75d8> 4a194: d9402017 ldw r5,128(sp) 4a198: d9002117 ldw r4,132(sp) 4a19c: d9801a04 addi r6,sp,104 4a1a0: d8c02a15 stw r3,168(sp) 4a1a4: d9c02b15 stw r7,172(sp) 4a1a8: 00490b80 call 490b8 <__sprint_r.part.0> 4a1ac: d8c02a17 ldw r3,168(sp) 4a1b0: d9c02b17 ldw r7,172(sp) 4a1b4: 103f3d1e bne r2,zero,49eac <__alt_data_end+0xfffd7eac> 4a1b8: d9001b17 ldw r4,108(sp) 4a1bc: d8801c17 ldw r2,112(sp) 4a1c0: d811883a mov r8,sp 4a1c4: 21400044 addi r5,r4,1 4a1c8: 003d4406 br 496dc <__alt_data_end+0xfffd76dc> 4a1cc: d9402017 ldw r5,128(sp) 4a1d0: d9002117 ldw r4,132(sp) 4a1d4: d9801a04 addi r6,sp,104 4a1d8: d8c02a15 stw r3,168(sp) 4a1dc: 00490b80 call 490b8 <__sprint_r.part.0> 4a1e0: d8c02a17 ldw r3,168(sp) 4a1e4: 103f311e bne r2,zero,49eac <__alt_data_end+0xfffd7eac> 4a1e8: d9001b17 ldw r4,108(sp) 4a1ec: d8801c17 ldw r2,112(sp) 4a1f0: d811883a mov r8,sp 4a1f4: 21400044 addi r5,r4,1 4a1f8: 003ef406 br 49dcc <__alt_data_end+0xfffd7dcc> 4a1fc: 1000bd1e bne r2,zero,4a4f4 <___vfiprintf_internal_r+0x1328> 4a200: 01400044 movi r5,1 4a204: 0009883a mov r4,zero 4a208: d811883a mov r8,sp 4a20c: 003ef106 br 49dd4 <__alt_data_end+0xfffd7dd4> 4a210: d9402017 ldw r5,128(sp) 4a214: d9002117 ldw r4,132(sp) 4a218: d9801a04 addi r6,sp,104 4a21c: 00490b80 call 490b8 <__sprint_r.part.0> 4a220: 103f221e bne r2,zero,49eac <__alt_data_end+0xfffd7eac> 4a224: d9401b17 ldw r5,108(sp) 4a228: d8801c17 ldw r2,112(sp) 4a22c: d811883a mov r8,sp 4a230: 29400044 addi r5,r5,1 4a234: 003d6206 br 497c0 <__alt_data_end+0xfffd77c0> 4a238: 01400174 movhi r5,5 4a23c: 29488004 addi r5,r5,8704 4a240: d9402615 stw r5,152(sp) 4a244: d8c02215 stw r3,136(sp) 4a248: 1023883a mov r17,r2 4a24c: 9d04b03a or r2,r19,r20 4a250: 103fa51e bne r2,zero,4a0e8 <__alt_data_end+0xfffd80e8> 4a254: 002b883a mov r21,zero 4a258: 00800084 movi r2,2 4a25c: 003e4a06 br 49b88 <__alt_data_end+0xfffd7b88> 4a260: 01400174 movhi r5,5 4a264: 29488004 addi r5,r5,8704 4a268: 002b883a mov r21,zero 4a26c: d9402615 stw r5,152(sp) 4a270: 003f9e06 br 4a0ec <__alt_data_end+0xfffd80ec> 4a274: d9402217 ldw r5,136(sp) 4a278: d8001d85 stb zero,118(sp) 4a27c: 0029883a mov r20,zero 4a280: 28800104 addi r2,r5,4 4a284: 2cc00017 ldw r19,0(r5) 4a288: 803e3a16 blt r16,zero,49b74 <__alt_data_end+0xfffd7b74> 4a28c: 00ffdfc4 movi r3,-129 4a290: d8802215 stw r2,136(sp) 4a294: 88e2703a and r17,r17,r3 4a298: 002b883a mov r21,zero 4a29c: 983e9b26 beq r19,zero,49d0c <__alt_data_end+0xfffd7d0c> 4a2a0: 00800244 movi r2,9 4a2a4: 14fdc936 bltu r2,r19,499cc <__alt_data_end+0xfffd79cc> 4a2a8: 003e9a06 br 49d14 <__alt_data_end+0xfffd7d14> 4a2ac: 00800c04 movi r2,48 4a2b0: d8c01d45 stb r3,117(sp) 4a2b4: d8801d05 stb r2,116(sp) 4a2b8: d8001d85 stb zero,118(sp) 4a2bc: 88c00094 ori r3,r17,2 4a2c0: 80009c16 blt r16,zero,4a534 <___vfiprintf_internal_r+0x1368> 4a2c4: 00bfdfc4 movi r2,-129 4a2c8: 88a2703a and r17,r17,r2 4a2cc: 8c400094 ori r17,r17,2 4a2d0: 002b883a mov r21,zero 4a2d4: 003f8506 br 4a0ec <__alt_data_end+0xfffd80ec> 4a2d8: b029883a mov r20,r22 4a2dc: 003c0b06 br 4930c <__alt_data_end+0xfffd730c> 4a2e0: 04e7c83a sub r19,zero,r19 4a2e4: 05400b44 movi r21,45 4a2e8: 9804c03a cmpne r2,r19,zero 4a2ec: 0529c83a sub r20,zero,r20 4a2f0: dd401d85 stb r21,118(sp) 4a2f4: a0a9c83a sub r20,r20,r2 4a2f8: 80009716 blt r16,zero,4a558 <___vfiprintf_internal_r+0x138c> 4a2fc: 00bfdfc4 movi r2,-129 4a300: 88a2703a and r17,r17,r2 4a304: 003db006 br 499c8 <__alt_data_end+0xfffd79c8> 4a308: b0c00007 ldb r3,0(r22) 4a30c: 003c0c06 br 49340 <__alt_data_end+0xfffd7340> 4a310: 8880100c andi r2,r17,64 4a314: d8001d85 stb zero,118(sp) 4a318: 1000461e bne r2,zero,4a434 <___vfiprintf_internal_r+0x1268> 4a31c: d9002217 ldw r4,136(sp) 4a320: 0029883a mov r20,zero 4a324: 20800104 addi r2,r4,4 4a328: 24c00017 ldw r19,0(r4) 4a32c: 803df80e bge r16,zero,49b10 <__alt_data_end+0xfffd7b10> 4a330: 9d06b03a or r3,r19,r20 4a334: d8802215 stw r2,136(sp) 4a338: 183d5e1e bne r3,zero,498b4 <__alt_data_end+0xfffd78b4> 4a33c: 002b883a mov r21,zero 4a340: 0005883a mov r2,zero 4a344: 003e1006 br 49b88 <__alt_data_end+0xfffd7b88> 4a348: 8880040c andi r2,r17,16 4a34c: 1000321e bne r2,zero,4a418 <___vfiprintf_internal_r+0x124c> 4a350: 8c40100c andi r17,r17,64 4a354: 88008d26 beq r17,zero,4a58c <___vfiprintf_internal_r+0x13c0> 4a358: d9402217 ldw r5,136(sp) 4a35c: d8c02417 ldw r3,144(sp) 4a360: 28800017 ldw r2,0(r5) 4a364: 29400104 addi r5,r5,4 4a368: d9402215 stw r5,136(sp) 4a36c: 10c0000d sth r3,0(r2) 4a370: 003bca06 br 4929c <__alt_data_end+0xfffd729c> 4a374: 8880100c andi r2,r17,64 4a378: 10003a26 beq r2,zero,4a464 <___vfiprintf_internal_r+0x1298> 4a37c: d8802217 ldw r2,136(sp) 4a380: 14c0000f ldh r19,0(r2) 4a384: 10800104 addi r2,r2,4 4a388: d8802215 stw r2,136(sp) 4a38c: 9829d7fa srai r20,r19,31 4a390: a005883a mov r2,r20 4a394: 003d8506 br 499ac <__alt_data_end+0xfffd79ac> 4a398: 8880100c andi r2,r17,64 4a39c: 10002b26 beq r2,zero,4a44c <___vfiprintf_internal_r+0x1280> 4a3a0: d8802217 ldw r2,136(sp) 4a3a4: 0029883a mov r20,zero 4a3a8: 14c0000b ldhu r19,0(r2) 4a3ac: 10800104 addi r2,r2,4 4a3b0: d8802215 stw r2,136(sp) 4a3b4: 003d5d06 br 4992c <__alt_data_end+0xfffd792c> 4a3b8: d9402017 ldw r5,128(sp) 4a3bc: d9002117 ldw r4,132(sp) 4a3c0: d9801a04 addi r6,sp,104 4a3c4: d8c02a15 stw r3,168(sp) 4a3c8: d9c02b15 stw r7,172(sp) 4a3cc: 00490b80 call 490b8 <__sprint_r.part.0> 4a3d0: d8c02a17 ldw r3,168(sp) 4a3d4: d9c02b17 ldw r7,172(sp) 4a3d8: 103eb41e bne r2,zero,49eac <__alt_data_end+0xfffd7eac> 4a3dc: d9001b17 ldw r4,108(sp) 4a3e0: d8801c17 ldw r2,112(sp) 4a3e4: d811883a mov r8,sp 4a3e8: 21400044 addi r5,r4,1 4a3ec: 003e6706 br 49d8c <__alt_data_end+0xfffd7d8c> 4a3f0: 00bfffc4 movi r2,-1 4a3f4: 003c4a06 br 49520 <__alt_data_end+0xfffd7520> 4a3f8: 9805883a mov r2,r19 4a3fc: 003ee806 br 49fa0 <__alt_data_end+0xfffd7fa0> 4a400: d8c02217 ldw r3,136(sp) 4a404: 0029883a mov r20,zero 4a408: 18800104 addi r2,r3,4 4a40c: 1cc0000b ldhu r19,0(r3) 4a410: 803f9e0e bge r16,zero,4a28c <__alt_data_end+0xfffd828c> 4a414: 003dd706 br 49b74 <__alt_data_end+0xfffd7b74> 4a418: d8c02217 ldw r3,136(sp) 4a41c: d9002417 ldw r4,144(sp) 4a420: 18800017 ldw r2,0(r3) 4a424: 18c00104 addi r3,r3,4 4a428: d8c02215 stw r3,136(sp) 4a42c: 11000015 stw r4,0(r2) 4a430: 003b9a06 br 4929c <__alt_data_end+0xfffd729c> 4a434: d8c02217 ldw r3,136(sp) 4a438: 0029883a mov r20,zero 4a43c: 18800104 addi r2,r3,4 4a440: 1cc0000b ldhu r19,0(r3) 4a444: 803db20e bge r16,zero,49b10 <__alt_data_end+0xfffd7b10> 4a448: 003fb906 br 4a330 <__alt_data_end+0xfffd8330> 4a44c: d9002217 ldw r4,136(sp) 4a450: 0029883a mov r20,zero 4a454: 24c00017 ldw r19,0(r4) 4a458: 21000104 addi r4,r4,4 4a45c: d9002215 stw r4,136(sp) 4a460: 003d3206 br 4992c <__alt_data_end+0xfffd792c> 4a464: d8c02217 ldw r3,136(sp) 4a468: 1cc00017 ldw r19,0(r3) 4a46c: 18c00104 addi r3,r3,4 4a470: d8c02215 stw r3,136(sp) 4a474: 9829d7fa srai r20,r19,31 4a478: a005883a mov r2,r20 4a47c: 003d4b06 br 499ac <__alt_data_end+0xfffd79ac> 4a480: 0009883a mov r4,zero 4a484: 01400044 movi r5,1 4a488: d811883a mov r8,sp 4a48c: 003e4f06 br 49dcc <__alt_data_end+0xfffd7dcc> 4a490: d8c02215 stw r3,136(sp) 4a494: 002b883a mov r21,zero 4a498: 003db806 br 49b7c <__alt_data_end+0xfffd7b7c> 4a49c: d811883a mov r8,sp 4a4a0: 003e9606 br 49efc <__alt_data_end+0xfffd7efc> 4a4a4: 01000174 movhi r4,5 4a4a8: 2108e004 addi r4,r4,9088 4a4ac: d9002315 stw r4,140(sp) 4a4b0: 003e6306 br 49e40 <__alt_data_end+0xfffd7e40> 4a4b4: b0c00043 ldbu r3,1(r22) 4a4b8: 8c400814 ori r17,r17,32 4a4bc: b5800044 addi r22,r22,1 4a4c0: 18c03fcc andi r3,r3,255 4a4c4: 18c0201c xori r3,r3,128 4a4c8: 18ffe004 addi r3,r3,-128 4a4cc: 003b9c06 br 49340 <__alt_data_end+0xfffd7340> 4a4d0: b809883a mov r4,r23 4a4d4: da002a15 stw r8,168(sp) 4a4d8: 00490200 call 49020 4a4dc: 1029883a mov r20,r2 4a4e0: dd401d83 ldbu r21,118(sp) 4a4e4: df002215 stw fp,136(sp) 4a4e8: 0021883a mov r16,zero 4a4ec: da002a17 ldw r8,168(sp) 4a4f0: 003c3906 br 495d8 <__alt_data_end+0xfffd75d8> 4a4f4: d9402017 ldw r5,128(sp) 4a4f8: d9002117 ldw r4,132(sp) 4a4fc: d9801a04 addi r6,sp,104 4a500: 00490b80 call 490b8 <__sprint_r.part.0> 4a504: 103e691e bne r2,zero,49eac <__alt_data_end+0xfffd7eac> 4a508: d9001b17 ldw r4,108(sp) 4a50c: d8801c17 ldw r2,112(sp) 4a510: d811883a mov r8,sp 4a514: 21400044 addi r5,r4,1 4a518: 003e2e06 br 49dd4 <__alt_data_end+0xfffd7dd4> 4a51c: 01000174 movhi r4,5 4a520: 2108e404 addi r4,r4,9104 4a524: d9002315 stw r4,140(sp) 4a528: d9001b17 ldw r4,108(sp) 4a52c: 21000044 addi r4,r4,1 4a530: 003c5e06 br 496ac <__alt_data_end+0xfffd76ac> 4a534: 002b883a mov r21,zero 4a538: 00800084 movi r2,2 4a53c: 10803fcc andi r2,r2,255 4a540: 01000044 movi r4,1 4a544: 11002b26 beq r2,r4,4a5f4 <___vfiprintf_internal_r+0x1428> 4a548: 01000084 movi r4,2 4a54c: 11002b1e bne r2,r4,4a5fc <___vfiprintf_internal_r+0x1430> 4a550: 1823883a mov r17,r3 4a554: 003ee506 br 4a0ec <__alt_data_end+0xfffd80ec> 4a558: 8807883a mov r3,r17 4a55c: 00800044 movi r2,1 4a560: 003ff606 br 4a53c <__alt_data_end+0xfffd853c> 4a564: 00800184 movi r2,6 4a568: 1400012e bgeu r2,r16,4a570 <___vfiprintf_internal_r+0x13a4> 4a56c: 1021883a mov r16,r2 4a570: 8029883a mov r20,r16 4a574: 8027883a mov r19,r16 4a578: 80002216 blt r16,zero,4a604 <___vfiprintf_internal_r+0x1438> 4a57c: 05c00174 movhi r23,5 4a580: df002215 stw fp,136(sp) 4a584: bdc88504 addi r23,r23,8724 4a588: 003cfb06 br 49978 <__alt_data_end+0xfffd7978> 4a58c: d9002217 ldw r4,136(sp) 4a590: d9402417 ldw r5,144(sp) 4a594: 20800017 ldw r2,0(r4) 4a598: 21000104 addi r4,r4,4 4a59c: d9002215 stw r4,136(sp) 4a5a0: 11400015 stw r5,0(r2) 4a5a4: 003b3d06 br 4929c <__alt_data_end+0xfffd729c> 4a5a8: 01400174 movhi r5,5 4a5ac: 2948e404 addi r5,r5,9104 4a5b0: d9402315 stw r5,140(sp) 4a5b4: d9401b17 ldw r5,108(sp) 4a5b8: 29400044 addi r5,r5,1 4a5bc: 003e6d06 br 49f74 <__alt_data_end+0xfffd7f74> 4a5c0: 8029883a mov r20,r16 4a5c4: dd401d83 ldbu r21,118(sp) 4a5c8: df002215 stw fp,136(sp) 4a5cc: 0021883a mov r16,zero 4a5d0: 003c0106 br 495d8 <__alt_data_end+0xfffd75d8> 4a5d4: 00c00174 movhi r3,5 4a5d8: 18c8e004 addi r3,r3,9088 4a5dc: d8c02315 stw r3,140(sp) 4a5e0: 280d883a mov r6,r5 4a5e4: 003c6906 br 4978c <__alt_data_end+0xfffd778c> 4a5e8: 802d883a mov r22,r16 4a5ec: 0021883a mov r16,zero 4a5f0: 003b5406 br 49344 <__alt_data_end+0xfffd7344> 4a5f4: 1823883a mov r17,r3 4a5f8: 003cf306 br 499c8 <__alt_data_end+0xfffd79c8> 4a5fc: 1823883a mov r17,r3 4a600: 003cad06 br 498b8 <__alt_data_end+0xfffd78b8> 4a604: 0027883a mov r19,zero 4a608: 003fdc06 br 4a57c <__alt_data_end+0xfffd857c> 4a60c: d9402217 ldw r5,136(sp) 4a610: 8005883a mov r2,r16 4a614: b0c00043 ldbu r3,1(r22) 4a618: 2c000017 ldw r16,0(r5) 4a61c: 29000104 addi r4,r5,4 4a620: d9002215 stw r4,136(sp) 4a624: 102d883a mov r22,r2 4a628: 803fa50e bge r16,zero,4a4c0 <__alt_data_end+0xfffd84c0> 4a62c: 18c03fcc andi r3,r3,255 4a630: 18c0201c xori r3,r3,128 4a634: 043fffc4 movi r16,-1 4a638: 18ffe004 addi r3,r3,-128 4a63c: 003b4006 br 49340 <__alt_data_end+0xfffd7340> 4a640: d9402303 ldbu r5,140(sp) 4a644: d9401d85 stb r5,118(sp) 4a648: 003cae06 br 49904 <__alt_data_end+0xfffd7904> 4a64c: d8c02303 ldbu r3,140(sp) 4a650: d8c01d85 stb r3,118(sp) 4a654: 003d1406 br 49aa8 <__alt_data_end+0xfffd7aa8> 4a658: d8c02303 ldbu r3,140(sp) 4a65c: d8c01d85 stb r3,118(sp) 4a660: 003cca06 br 4998c <__alt_data_end+0xfffd798c> 4a664: 8880004c andi r2,r17,1 4a668: 002b883a mov r21,zero 4a66c: 10000526 beq r2,zero,4a684 <___vfiprintf_internal_r+0x14b8> 4a670: 00800c04 movi r2,48 4a674: d88019c5 stb r2,103(sp) 4a678: dd002817 ldw r20,160(sp) 4a67c: ddc019c4 addi r23,sp,103 4a680: 003bd506 br 495d8 <__alt_data_end+0xfffd75d8> 4a684: 0029883a mov r20,zero 4a688: ddc01a04 addi r23,sp,104 4a68c: 003bd206 br 495d8 <__alt_data_end+0xfffd75d8> 4a690: d9002303 ldbu r4,140(sp) 4a694: d9001d85 stb r4,118(sp) 4a698: 003da606 br 49d34 <__alt_data_end+0xfffd7d34> 4a69c: d8c02303 ldbu r3,140(sp) 4a6a0: d8c01d85 stb r3,118(sp) 4a6a4: 003c7606 br 49880 <__alt_data_end+0xfffd7880> 4a6a8: d8c02303 ldbu r3,140(sp) 4a6ac: d8c01d85 stb r3,118(sp) 4a6b0: 003c6506 br 49848 <__alt_data_end+0xfffd7848> 4a6b4: d9002303 ldbu r4,140(sp) 4a6b8: d9001d85 stb r4,118(sp) 4a6bc: 003d3d06 br 49bb4 <__alt_data_end+0xfffd7bb4> 4a6c0: d8c02303 ldbu r3,140(sp) 4a6c4: d8c01d85 stb r3,118(sp) 4a6c8: 003d1d06 br 49b40 <__alt_data_end+0xfffd7b40> 4a6cc: d8c02303 ldbu r3,140(sp) 4a6d0: d8c01d85 stb r3,118(sp) 4a6d4: 003d0306 br 49ae4 <__alt_data_end+0xfffd7ae4> 0004a6d8 <__vfiprintf_internal>: 4a6d8: 00800174 movhi r2,5 4a6dc: 10908b04 addi r2,r2,16940 4a6e0: 300f883a mov r7,r6 4a6e4: 280d883a mov r6,r5 4a6e8: 200b883a mov r5,r4 4a6ec: 11000017 ldw r4,0(r2) 4a6f0: 00491cc1 jmpi 491cc <___vfiprintf_internal_r> 0004a6f4 <__sbprintf>: 4a6f4: 2880030b ldhu r2,12(r5) 4a6f8: 2ac01917 ldw r11,100(r5) 4a6fc: 2a80038b ldhu r10,14(r5) 4a700: 2a400717 ldw r9,28(r5) 4a704: 2a000917 ldw r8,36(r5) 4a708: defee204 addi sp,sp,-1144 4a70c: 00c10004 movi r3,1024 4a710: dc011a15 stw r16,1128(sp) 4a714: 10bfff4c andi r2,r2,65533 4a718: 2821883a mov r16,r5 4a71c: d8cb883a add r5,sp,r3 4a720: dc811c15 stw r18,1136(sp) 4a724: dc411b15 stw r17,1132(sp) 4a728: dfc11d15 stw ra,1140(sp) 4a72c: 2025883a mov r18,r4 4a730: d881030d sth r2,1036(sp) 4a734: dac11915 stw r11,1124(sp) 4a738: da81038d sth r10,1038(sp) 4a73c: da410715 stw r9,1052(sp) 4a740: da010915 stw r8,1060(sp) 4a744: dec10015 stw sp,1024(sp) 4a748: dec10415 stw sp,1040(sp) 4a74c: d8c10215 stw r3,1032(sp) 4a750: d8c10515 stw r3,1044(sp) 4a754: d8010615 stw zero,1048(sp) 4a758: 00491cc0 call 491cc <___vfiprintf_internal_r> 4a75c: 1023883a mov r17,r2 4a760: 10000416 blt r2,zero,4a774 <__sbprintf+0x80> 4a764: d9410004 addi r5,sp,1024 4a768: 9009883a mov r4,r18 4a76c: 00461400 call 46140 <_fflush_r> 4a770: 10000d1e bne r2,zero,4a7a8 <__sbprintf+0xb4> 4a774: d881030b ldhu r2,1036(sp) 4a778: 1080100c andi r2,r2,64 4a77c: 10000326 beq r2,zero,4a78c <__sbprintf+0x98> 4a780: 8080030b ldhu r2,12(r16) 4a784: 10801014 ori r2,r2,64 4a788: 8080030d sth r2,12(r16) 4a78c: 8805883a mov r2,r17 4a790: dfc11d17 ldw ra,1140(sp) 4a794: dc811c17 ldw r18,1136(sp) 4a798: dc411b17 ldw r17,1132(sp) 4a79c: dc011a17 ldw r16,1128(sp) 4a7a0: dec11e04 addi sp,sp,1144 4a7a4: f800283a ret 4a7a8: 047fffc4 movi r17,-1 4a7ac: 003ff106 br 4a774 <__alt_data_end+0xfffd8774> 0004a7b0 <__swbuf_r>: 4a7b0: defffb04 addi sp,sp,-20 4a7b4: dcc00315 stw r19,12(sp) 4a7b8: dc800215 stw r18,8(sp) 4a7bc: dc000015 stw r16,0(sp) 4a7c0: dfc00415 stw ra,16(sp) 4a7c4: dc400115 stw r17,4(sp) 4a7c8: 2025883a mov r18,r4 4a7cc: 2827883a mov r19,r5 4a7d0: 3021883a mov r16,r6 4a7d4: 20000226 beq r4,zero,4a7e0 <__swbuf_r+0x30> 4a7d8: 20800e17 ldw r2,56(r4) 4a7dc: 10004226 beq r2,zero,4a8e8 <__swbuf_r+0x138> 4a7e0: 80800617 ldw r2,24(r16) 4a7e4: 8100030b ldhu r4,12(r16) 4a7e8: 80800215 stw r2,8(r16) 4a7ec: 2080020c andi r2,r4,8 4a7f0: 10003626 beq r2,zero,4a8cc <__swbuf_r+0x11c> 4a7f4: 80c00417 ldw r3,16(r16) 4a7f8: 18003426 beq r3,zero,4a8cc <__swbuf_r+0x11c> 4a7fc: 2088000c andi r2,r4,8192 4a800: 9c403fcc andi r17,r19,255 4a804: 10001a26 beq r2,zero,4a870 <__swbuf_r+0xc0> 4a808: 80800017 ldw r2,0(r16) 4a80c: 81000517 ldw r4,20(r16) 4a810: 10c7c83a sub r3,r2,r3 4a814: 1900200e bge r3,r4,4a898 <__swbuf_r+0xe8> 4a818: 18c00044 addi r3,r3,1 4a81c: 81000217 ldw r4,8(r16) 4a820: 11400044 addi r5,r2,1 4a824: 81400015 stw r5,0(r16) 4a828: 213fffc4 addi r4,r4,-1 4a82c: 81000215 stw r4,8(r16) 4a830: 14c00005 stb r19,0(r2) 4a834: 80800517 ldw r2,20(r16) 4a838: 10c01e26 beq r2,r3,4a8b4 <__swbuf_r+0x104> 4a83c: 8080030b ldhu r2,12(r16) 4a840: 1080004c andi r2,r2,1 4a844: 10000226 beq r2,zero,4a850 <__swbuf_r+0xa0> 4a848: 00800284 movi r2,10 4a84c: 88801926 beq r17,r2,4a8b4 <__swbuf_r+0x104> 4a850: 8805883a mov r2,r17 4a854: dfc00417 ldw ra,16(sp) 4a858: dcc00317 ldw r19,12(sp) 4a85c: dc800217 ldw r18,8(sp) 4a860: dc400117 ldw r17,4(sp) 4a864: dc000017 ldw r16,0(sp) 4a868: dec00504 addi sp,sp,20 4a86c: f800283a ret 4a870: 81401917 ldw r5,100(r16) 4a874: 00b7ffc4 movi r2,-8193 4a878: 21080014 ori r4,r4,8192 4a87c: 2884703a and r2,r5,r2 4a880: 80801915 stw r2,100(r16) 4a884: 80800017 ldw r2,0(r16) 4a888: 8100030d sth r4,12(r16) 4a88c: 81000517 ldw r4,20(r16) 4a890: 10c7c83a sub r3,r2,r3 4a894: 193fe016 blt r3,r4,4a818 <__alt_data_end+0xfffd8818> 4a898: 800b883a mov r5,r16 4a89c: 9009883a mov r4,r18 4a8a0: 00461400 call 46140 <_fflush_r> 4a8a4: 1000071e bne r2,zero,4a8c4 <__swbuf_r+0x114> 4a8a8: 80800017 ldw r2,0(r16) 4a8ac: 00c00044 movi r3,1 4a8b0: 003fda06 br 4a81c <__alt_data_end+0xfffd881c> 4a8b4: 800b883a mov r5,r16 4a8b8: 9009883a mov r4,r18 4a8bc: 00461400 call 46140 <_fflush_r> 4a8c0: 103fe326 beq r2,zero,4a850 <__alt_data_end+0xfffd8850> 4a8c4: 00bfffc4 movi r2,-1 4a8c8: 003fe206 br 4a854 <__alt_data_end+0xfffd8854> 4a8cc: 800b883a mov r5,r16 4a8d0: 9009883a mov r4,r18 4a8d4: 00445200 call 44520 <__swsetup_r> 4a8d8: 103ffa1e bne r2,zero,4a8c4 <__alt_data_end+0xfffd88c4> 4a8dc: 8100030b ldhu r4,12(r16) 4a8e0: 80c00417 ldw r3,16(r16) 4a8e4: 003fc506 br 4a7fc <__alt_data_end+0xfffd87fc> 4a8e8: 004652c0 call 4652c <__sinit> 4a8ec: 003fbc06 br 4a7e0 <__alt_data_end+0xfffd87e0> 0004a8f0 <__swbuf>: 4a8f0: 00800174 movhi r2,5 4a8f4: 10908b04 addi r2,r2,16940 4a8f8: 280d883a mov r6,r5 4a8fc: 200b883a mov r5,r4 4a900: 11000017 ldw r4,0(r2) 4a904: 004a7b01 jmpi 4a7b0 <__swbuf_r> 0004a908 <_write_r>: 4a908: defffd04 addi sp,sp,-12 4a90c: 2805883a mov r2,r5 4a910: dc000015 stw r16,0(sp) 4a914: 04000174 movhi r16,5 4a918: dc400115 stw r17,4(sp) 4a91c: 300b883a mov r5,r6 4a920: 8417ab04 addi r16,r16,24236 4a924: 2023883a mov r17,r4 4a928: 380d883a mov r6,r7 4a92c: 1009883a mov r4,r2 4a930: dfc00215 stw ra,8(sp) 4a934: 80000015 stw zero,0(r16) 4a938: 004f0ec0 call 4f0ec 4a93c: 00ffffc4 movi r3,-1 4a940: 10c00526 beq r2,r3,4a958 <_write_r+0x50> 4a944: dfc00217 ldw ra,8(sp) 4a948: dc400117 ldw r17,4(sp) 4a94c: dc000017 ldw r16,0(sp) 4a950: dec00304 addi sp,sp,12 4a954: f800283a ret 4a958: 80c00017 ldw r3,0(r16) 4a95c: 183ff926 beq r3,zero,4a944 <__alt_data_end+0xfffd8944> 4a960: 88c00015 stw r3,0(r17) 4a964: 003ff706 br 4a944 <__alt_data_end+0xfffd8944> 0004a968 <_close_r>: 4a968: defffd04 addi sp,sp,-12 4a96c: dc000015 stw r16,0(sp) 4a970: 04000174 movhi r16,5 4a974: dc400115 stw r17,4(sp) 4a978: 8417ab04 addi r16,r16,24236 4a97c: 2023883a mov r17,r4 4a980: 2809883a mov r4,r5 4a984: dfc00215 stw ra,8(sp) 4a988: 80000015 stw zero,0(r16) 4a98c: 004e8940 call 4e894 4a990: 00ffffc4 movi r3,-1 4a994: 10c00526 beq r2,r3,4a9ac <_close_r+0x44> 4a998: dfc00217 ldw ra,8(sp) 4a99c: dc400117 ldw r17,4(sp) 4a9a0: dc000017 ldw r16,0(sp) 4a9a4: dec00304 addi sp,sp,12 4a9a8: f800283a ret 4a9ac: 80c00017 ldw r3,0(r16) 4a9b0: 183ff926 beq r3,zero,4a998 <__alt_data_end+0xfffd8998> 4a9b4: 88c00015 stw r3,0(r17) 4a9b8: 003ff706 br 4a998 <__alt_data_end+0xfffd8998> 0004a9bc <_calloc_r>: 4a9bc: defffe04 addi sp,sp,-8 4a9c0: 2805883a mov r2,r5 4a9c4: dc000015 stw r16,0(sp) 4a9c8: 300b883a mov r5,r6 4a9cc: 2021883a mov r16,r4 4a9d0: 1009883a mov r4,r2 4a9d4: dfc00115 stw ra,4(sp) 4a9d8: 004c9f80 call 4c9f8 <__mulsi3> 4a9dc: 100b883a mov r5,r2 4a9e0: 8009883a mov r4,r16 4a9e4: 0046dd00 call 46dd0 <_malloc_r> 4a9e8: 10002926 beq r2,zero,4aa90 <_calloc_r+0xd4> 4a9ec: 11bfff17 ldw r6,-4(r2) 4a9f0: 1021883a mov r16,r2 4a9f4: 00bfff04 movi r2,-4 4a9f8: 308c703a and r6,r6,r2 4a9fc: 00c00904 movi r3,36 4aa00: 308d883a add r6,r6,r2 4aa04: 19801636 bltu r3,r6,4aa60 <_calloc_r+0xa4> 4aa08: 008004c4 movi r2,19 4aa0c: 11800b2e bgeu r2,r6,4aa3c <_calloc_r+0x80> 4aa10: 80000015 stw zero,0(r16) 4aa14: 80000115 stw zero,4(r16) 4aa18: 008006c4 movi r2,27 4aa1c: 11801a2e bgeu r2,r6,4aa88 <_calloc_r+0xcc> 4aa20: 80000215 stw zero,8(r16) 4aa24: 80000315 stw zero,12(r16) 4aa28: 30c0151e bne r6,r3,4aa80 <_calloc_r+0xc4> 4aa2c: 80000415 stw zero,16(r16) 4aa30: 80800604 addi r2,r16,24 4aa34: 80000515 stw zero,20(r16) 4aa38: 00000106 br 4aa40 <_calloc_r+0x84> 4aa3c: 8005883a mov r2,r16 4aa40: 10000015 stw zero,0(r2) 4aa44: 10000115 stw zero,4(r2) 4aa48: 10000215 stw zero,8(r2) 4aa4c: 8005883a mov r2,r16 4aa50: dfc00117 ldw ra,4(sp) 4aa54: dc000017 ldw r16,0(sp) 4aa58: dec00204 addi sp,sp,8 4aa5c: f800283a ret 4aa60: 000b883a mov r5,zero 4aa64: 8009883a mov r4,r16 4aa68: 00478080 call 47808 4aa6c: 8005883a mov r2,r16 4aa70: dfc00117 ldw ra,4(sp) 4aa74: dc000017 ldw r16,0(sp) 4aa78: dec00204 addi sp,sp,8 4aa7c: f800283a ret 4aa80: 80800404 addi r2,r16,16 4aa84: 003fee06 br 4aa40 <__alt_data_end+0xfffd8a40> 4aa88: 80800204 addi r2,r16,8 4aa8c: 003fec06 br 4aa40 <__alt_data_end+0xfffd8a40> 4aa90: 0005883a mov r2,zero 4aa94: 003fee06 br 4aa50 <__alt_data_end+0xfffd8a50> 0004aa98 <_fclose_r>: 4aa98: 28003926 beq r5,zero,4ab80 <_fclose_r+0xe8> 4aa9c: defffc04 addi sp,sp,-16 4aaa0: dc400115 stw r17,4(sp) 4aaa4: dc000015 stw r16,0(sp) 4aaa8: dfc00315 stw ra,12(sp) 4aaac: dc800215 stw r18,8(sp) 4aab0: 2023883a mov r17,r4 4aab4: 2821883a mov r16,r5 4aab8: 20000226 beq r4,zero,4aac4 <_fclose_r+0x2c> 4aabc: 20800e17 ldw r2,56(r4) 4aac0: 10002726 beq r2,zero,4ab60 <_fclose_r+0xc8> 4aac4: 8080030f ldh r2,12(r16) 4aac8: 1000071e bne r2,zero,4aae8 <_fclose_r+0x50> 4aacc: 0005883a mov r2,zero 4aad0: dfc00317 ldw ra,12(sp) 4aad4: dc800217 ldw r18,8(sp) 4aad8: dc400117 ldw r17,4(sp) 4aadc: dc000017 ldw r16,0(sp) 4aae0: dec00404 addi sp,sp,16 4aae4: f800283a ret 4aae8: 800b883a mov r5,r16 4aaec: 8809883a mov r4,r17 4aaf0: 0045f240 call 45f24 <__sflush_r> 4aaf4: 1025883a mov r18,r2 4aaf8: 80800b17 ldw r2,44(r16) 4aafc: 10000426 beq r2,zero,4ab10 <_fclose_r+0x78> 4ab00: 81400717 ldw r5,28(r16) 4ab04: 8809883a mov r4,r17 4ab08: 103ee83a callr r2 4ab0c: 10001616 blt r2,zero,4ab68 <_fclose_r+0xd0> 4ab10: 8080030b ldhu r2,12(r16) 4ab14: 1080200c andi r2,r2,128 4ab18: 1000151e bne r2,zero,4ab70 <_fclose_r+0xd8> 4ab1c: 81400c17 ldw r5,48(r16) 4ab20: 28000526 beq r5,zero,4ab38 <_fclose_r+0xa0> 4ab24: 80801004 addi r2,r16,64 4ab28: 28800226 beq r5,r2,4ab34 <_fclose_r+0x9c> 4ab2c: 8809883a mov r4,r17 4ab30: 00466a00 call 466a0 <_free_r> 4ab34: 80000c15 stw zero,48(r16) 4ab38: 81401117 ldw r5,68(r16) 4ab3c: 28000326 beq r5,zero,4ab4c <_fclose_r+0xb4> 4ab40: 8809883a mov r4,r17 4ab44: 00466a00 call 466a0 <_free_r> 4ab48: 80001115 stw zero,68(r16) 4ab4c: 004653c0 call 4653c <__sfp_lock_acquire> 4ab50: 8000030d sth zero,12(r16) 4ab54: 00465400 call 46540 <__sfp_lock_release> 4ab58: 9005883a mov r2,r18 4ab5c: 003fdc06 br 4aad0 <__alt_data_end+0xfffd8ad0> 4ab60: 004652c0 call 4652c <__sinit> 4ab64: 003fd706 br 4aac4 <__alt_data_end+0xfffd8ac4> 4ab68: 04bfffc4 movi r18,-1 4ab6c: 003fe806 br 4ab10 <__alt_data_end+0xfffd8b10> 4ab70: 81400417 ldw r5,16(r16) 4ab74: 8809883a mov r4,r17 4ab78: 00466a00 call 466a0 <_free_r> 4ab7c: 003fe706 br 4ab1c <__alt_data_end+0xfffd8b1c> 4ab80: 0005883a mov r2,zero 4ab84: f800283a ret 0004ab88 : 4ab88: 00800174 movhi r2,5 4ab8c: 10908b04 addi r2,r2,16940 4ab90: 200b883a mov r5,r4 4ab94: 11000017 ldw r4,0(r2) 4ab98: 004aa981 jmpi 4aa98 <_fclose_r> 0004ab9c <__fputwc>: 4ab9c: defff804 addi sp,sp,-32 4aba0: dcc00415 stw r19,16(sp) 4aba4: dc800315 stw r18,12(sp) 4aba8: dc000115 stw r16,4(sp) 4abac: dfc00715 stw ra,28(sp) 4abb0: dd400615 stw r21,24(sp) 4abb4: dd000515 stw r20,20(sp) 4abb8: dc400215 stw r17,8(sp) 4abbc: 2027883a mov r19,r4 4abc0: 2825883a mov r18,r5 4abc4: 3021883a mov r16,r6 4abc8: 0046bc00 call 46bc0 <__locale_mb_cur_max> 4abcc: 00c00044 movi r3,1 4abd0: 10c03e26 beq r2,r3,4accc <__fputwc+0x130> 4abd4: 81c01704 addi r7,r16,92 4abd8: 900d883a mov r6,r18 4abdc: d80b883a mov r5,sp 4abe0: 9809883a mov r4,r19 4abe4: 004ba9c0 call 4ba9c <_wcrtomb_r> 4abe8: 1029883a mov r20,r2 4abec: 00bfffc4 movi r2,-1 4abf0: a0802026 beq r20,r2,4ac74 <__fputwc+0xd8> 4abf4: d9400003 ldbu r5,0(sp) 4abf8: a0001c26 beq r20,zero,4ac6c <__fputwc+0xd0> 4abfc: 0023883a mov r17,zero 4ac00: 05400284 movi r21,10 4ac04: 00000906 br 4ac2c <__fputwc+0x90> 4ac08: 80800017 ldw r2,0(r16) 4ac0c: 11400005 stb r5,0(r2) 4ac10: 80c00017 ldw r3,0(r16) 4ac14: 18c00044 addi r3,r3,1 4ac18: 80c00015 stw r3,0(r16) 4ac1c: 8c400044 addi r17,r17,1 4ac20: dc45883a add r2,sp,r17 4ac24: 8d00112e bgeu r17,r20,4ac6c <__fputwc+0xd0> 4ac28: 11400003 ldbu r5,0(r2) 4ac2c: 80c00217 ldw r3,8(r16) 4ac30: 18ffffc4 addi r3,r3,-1 4ac34: 80c00215 stw r3,8(r16) 4ac38: 183ff30e bge r3,zero,4ac08 <__alt_data_end+0xfffd8c08> 4ac3c: 80800617 ldw r2,24(r16) 4ac40: 18801916 blt r3,r2,4aca8 <__fputwc+0x10c> 4ac44: 80800017 ldw r2,0(r16) 4ac48: 11400005 stb r5,0(r2) 4ac4c: 80800017 ldw r2,0(r16) 4ac50: 10c00003 ldbu r3,0(r2) 4ac54: 10800044 addi r2,r2,1 4ac58: 1d402326 beq r3,r21,4ace8 <__fputwc+0x14c> 4ac5c: 80800015 stw r2,0(r16) 4ac60: 8c400044 addi r17,r17,1 4ac64: dc45883a add r2,sp,r17 4ac68: 8d3fef36 bltu r17,r20,4ac28 <__alt_data_end+0xfffd8c28> 4ac6c: 9005883a mov r2,r18 4ac70: 00000406 br 4ac84 <__fputwc+0xe8> 4ac74: 80c0030b ldhu r3,12(r16) 4ac78: a005883a mov r2,r20 4ac7c: 18c01014 ori r3,r3,64 4ac80: 80c0030d sth r3,12(r16) 4ac84: dfc00717 ldw ra,28(sp) 4ac88: dd400617 ldw r21,24(sp) 4ac8c: dd000517 ldw r20,20(sp) 4ac90: dcc00417 ldw r19,16(sp) 4ac94: dc800317 ldw r18,12(sp) 4ac98: dc400217 ldw r17,8(sp) 4ac9c: dc000117 ldw r16,4(sp) 4aca0: dec00804 addi sp,sp,32 4aca4: f800283a ret 4aca8: 800d883a mov r6,r16 4acac: 29403fcc andi r5,r5,255 4acb0: 9809883a mov r4,r19 4acb4: 004a7b00 call 4a7b0 <__swbuf_r> 4acb8: 10bfffe0 cmpeqi r2,r2,-1 4acbc: 10803fcc andi r2,r2,255 4acc0: 103fd626 beq r2,zero,4ac1c <__alt_data_end+0xfffd8c1c> 4acc4: 00bfffc4 movi r2,-1 4acc8: 003fee06 br 4ac84 <__alt_data_end+0xfffd8c84> 4accc: 90ffffc4 addi r3,r18,-1 4acd0: 01003f84 movi r4,254 4acd4: 20ffbf36 bltu r4,r3,4abd4 <__alt_data_end+0xfffd8bd4> 4acd8: 900b883a mov r5,r18 4acdc: dc800005 stb r18,0(sp) 4ace0: 1029883a mov r20,r2 4ace4: 003fc506 br 4abfc <__alt_data_end+0xfffd8bfc> 4ace8: 800d883a mov r6,r16 4acec: a80b883a mov r5,r21 4acf0: 9809883a mov r4,r19 4acf4: 004a7b00 call 4a7b0 <__swbuf_r> 4acf8: 10bfffe0 cmpeqi r2,r2,-1 4acfc: 003fef06 br 4acbc <__alt_data_end+0xfffd8cbc> 0004ad00 <_fputwc_r>: 4ad00: 3080030b ldhu r2,12(r6) 4ad04: 10c8000c andi r3,r2,8192 4ad08: 1800051e bne r3,zero,4ad20 <_fputwc_r+0x20> 4ad0c: 30c01917 ldw r3,100(r6) 4ad10: 10880014 ori r2,r2,8192 4ad14: 3080030d sth r2,12(r6) 4ad18: 18880014 ori r2,r3,8192 4ad1c: 30801915 stw r2,100(r6) 4ad20: 004ab9c1 jmpi 4ab9c <__fputwc> 0004ad24 : 4ad24: 00800174 movhi r2,5 4ad28: defffc04 addi sp,sp,-16 4ad2c: 10908b04 addi r2,r2,16940 4ad30: dc000115 stw r16,4(sp) 4ad34: 14000017 ldw r16,0(r2) 4ad38: dc400215 stw r17,8(sp) 4ad3c: dfc00315 stw ra,12(sp) 4ad40: 2023883a mov r17,r4 4ad44: 80000226 beq r16,zero,4ad50 4ad48: 80800e17 ldw r2,56(r16) 4ad4c: 10001026 beq r2,zero,4ad90 4ad50: 2880030b ldhu r2,12(r5) 4ad54: 10c8000c andi r3,r2,8192 4ad58: 1800051e bne r3,zero,4ad70 4ad5c: 28c01917 ldw r3,100(r5) 4ad60: 10880014 ori r2,r2,8192 4ad64: 2880030d sth r2,12(r5) 4ad68: 18880014 ori r2,r3,8192 4ad6c: 28801915 stw r2,100(r5) 4ad70: 280d883a mov r6,r5 4ad74: 8009883a mov r4,r16 4ad78: 880b883a mov r5,r17 4ad7c: dfc00317 ldw ra,12(sp) 4ad80: dc400217 ldw r17,8(sp) 4ad84: dc000117 ldw r16,4(sp) 4ad88: dec00404 addi sp,sp,16 4ad8c: 004ab9c1 jmpi 4ab9c <__fputwc> 4ad90: 8009883a mov r4,r16 4ad94: d9400015 stw r5,0(sp) 4ad98: 004652c0 call 4652c <__sinit> 4ad9c: d9400017 ldw r5,0(sp) 4ada0: 003feb06 br 4ad50 <__alt_data_end+0xfffd8d50> 0004ada4 <_fstat_r>: 4ada4: defffd04 addi sp,sp,-12 4ada8: 2805883a mov r2,r5 4adac: dc000015 stw r16,0(sp) 4adb0: 04000174 movhi r16,5 4adb4: dc400115 stw r17,4(sp) 4adb8: 8417ab04 addi r16,r16,24236 4adbc: 2023883a mov r17,r4 4adc0: 300b883a mov r5,r6 4adc4: 1009883a mov r4,r2 4adc8: dfc00215 stw ra,8(sp) 4adcc: 80000015 stw zero,0(r16) 4add0: 004e9d40 call 4e9d4 4add4: 00ffffc4 movi r3,-1 4add8: 10c00526 beq r2,r3,4adf0 <_fstat_r+0x4c> 4addc: dfc00217 ldw ra,8(sp) 4ade0: dc400117 ldw r17,4(sp) 4ade4: dc000017 ldw r16,0(sp) 4ade8: dec00304 addi sp,sp,12 4adec: f800283a ret 4adf0: 80c00017 ldw r3,0(r16) 4adf4: 183ff926 beq r3,zero,4addc <__alt_data_end+0xfffd8ddc> 4adf8: 88c00015 stw r3,0(r17) 4adfc: 003ff706 br 4addc <__alt_data_end+0xfffd8ddc> 0004ae00 <__sfvwrite_r>: 4ae00: 30800217 ldw r2,8(r6) 4ae04: 10006726 beq r2,zero,4afa4 <__sfvwrite_r+0x1a4> 4ae08: 28c0030b ldhu r3,12(r5) 4ae0c: defff404 addi sp,sp,-48 4ae10: dd400715 stw r21,28(sp) 4ae14: dd000615 stw r20,24(sp) 4ae18: dc000215 stw r16,8(sp) 4ae1c: dfc00b15 stw ra,44(sp) 4ae20: df000a15 stw fp,40(sp) 4ae24: ddc00915 stw r23,36(sp) 4ae28: dd800815 stw r22,32(sp) 4ae2c: dcc00515 stw r19,20(sp) 4ae30: dc800415 stw r18,16(sp) 4ae34: dc400315 stw r17,12(sp) 4ae38: 1880020c andi r2,r3,8 4ae3c: 2821883a mov r16,r5 4ae40: 202b883a mov r21,r4 4ae44: 3029883a mov r20,r6 4ae48: 10002726 beq r2,zero,4aee8 <__sfvwrite_r+0xe8> 4ae4c: 28800417 ldw r2,16(r5) 4ae50: 10002526 beq r2,zero,4aee8 <__sfvwrite_r+0xe8> 4ae54: 1880008c andi r2,r3,2 4ae58: a4400017 ldw r17,0(r20) 4ae5c: 10002a26 beq r2,zero,4af08 <__sfvwrite_r+0x108> 4ae60: 05a00034 movhi r22,32768 4ae64: 0027883a mov r19,zero 4ae68: 0025883a mov r18,zero 4ae6c: b5bf0004 addi r22,r22,-1024 4ae70: 980d883a mov r6,r19 4ae74: a809883a mov r4,r21 4ae78: 90004626 beq r18,zero,4af94 <__sfvwrite_r+0x194> 4ae7c: 900f883a mov r7,r18 4ae80: b480022e bgeu r22,r18,4ae8c <__sfvwrite_r+0x8c> 4ae84: 01e00034 movhi r7,32768 4ae88: 39ff0004 addi r7,r7,-1024 4ae8c: 80800917 ldw r2,36(r16) 4ae90: 81400717 ldw r5,28(r16) 4ae94: 103ee83a callr r2 4ae98: 00805a0e bge zero,r2,4b004 <__sfvwrite_r+0x204> 4ae9c: a0c00217 ldw r3,8(r20) 4aea0: 98a7883a add r19,r19,r2 4aea4: 90a5c83a sub r18,r18,r2 4aea8: 1885c83a sub r2,r3,r2 4aeac: a0800215 stw r2,8(r20) 4aeb0: 103fef1e bne r2,zero,4ae70 <__alt_data_end+0xfffd8e70> 4aeb4: 0005883a mov r2,zero 4aeb8: dfc00b17 ldw ra,44(sp) 4aebc: df000a17 ldw fp,40(sp) 4aec0: ddc00917 ldw r23,36(sp) 4aec4: dd800817 ldw r22,32(sp) 4aec8: dd400717 ldw r21,28(sp) 4aecc: dd000617 ldw r20,24(sp) 4aed0: dcc00517 ldw r19,20(sp) 4aed4: dc800417 ldw r18,16(sp) 4aed8: dc400317 ldw r17,12(sp) 4aedc: dc000217 ldw r16,8(sp) 4aee0: dec00c04 addi sp,sp,48 4aee4: f800283a ret 4aee8: 800b883a mov r5,r16 4aeec: a809883a mov r4,r21 4aef0: 00445200 call 44520 <__swsetup_r> 4aef4: 1000ee1e bne r2,zero,4b2b0 <__sfvwrite_r+0x4b0> 4aef8: 80c0030b ldhu r3,12(r16) 4aefc: a4400017 ldw r17,0(r20) 4af00: 1880008c andi r2,r3,2 4af04: 103fd61e bne r2,zero,4ae60 <__alt_data_end+0xfffd8e60> 4af08: 1880004c andi r2,r3,1 4af0c: 1000421e bne r2,zero,4b018 <__sfvwrite_r+0x218> 4af10: 0039883a mov fp,zero 4af14: 0025883a mov r18,zero 4af18: 90001a26 beq r18,zero,4af84 <__sfvwrite_r+0x184> 4af1c: 1880800c andi r2,r3,512 4af20: 84c00217 ldw r19,8(r16) 4af24: 10002126 beq r2,zero,4afac <__sfvwrite_r+0x1ac> 4af28: 982f883a mov r23,r19 4af2c: 94c09636 bltu r18,r19,4b188 <__sfvwrite_r+0x388> 4af30: 1881200c andi r2,r3,1152 4af34: 1000a11e bne r2,zero,4b1bc <__sfvwrite_r+0x3bc> 4af38: 81000017 ldw r4,0(r16) 4af3c: b80d883a mov r6,r23 4af40: e00b883a mov r5,fp 4af44: 004b37c0 call 4b37c 4af48: 80c00217 ldw r3,8(r16) 4af4c: 81000017 ldw r4,0(r16) 4af50: 9005883a mov r2,r18 4af54: 1ce7c83a sub r19,r3,r19 4af58: 25cf883a add r7,r4,r23 4af5c: 84c00215 stw r19,8(r16) 4af60: 81c00015 stw r7,0(r16) 4af64: a0c00217 ldw r3,8(r20) 4af68: e0b9883a add fp,fp,r2 4af6c: 90a5c83a sub r18,r18,r2 4af70: 18a7c83a sub r19,r3,r2 4af74: a4c00215 stw r19,8(r20) 4af78: 983fce26 beq r19,zero,4aeb4 <__alt_data_end+0xfffd8eb4> 4af7c: 80c0030b ldhu r3,12(r16) 4af80: 903fe61e bne r18,zero,4af1c <__alt_data_end+0xfffd8f1c> 4af84: 8f000017 ldw fp,0(r17) 4af88: 8c800117 ldw r18,4(r17) 4af8c: 8c400204 addi r17,r17,8 4af90: 003fe106 br 4af18 <__alt_data_end+0xfffd8f18> 4af94: 8cc00017 ldw r19,0(r17) 4af98: 8c800117 ldw r18,4(r17) 4af9c: 8c400204 addi r17,r17,8 4afa0: 003fb306 br 4ae70 <__alt_data_end+0xfffd8e70> 4afa4: 0005883a mov r2,zero 4afa8: f800283a ret 4afac: 81000017 ldw r4,0(r16) 4afb0: 80800417 ldw r2,16(r16) 4afb4: 11005a36 bltu r2,r4,4b120 <__sfvwrite_r+0x320> 4afb8: 85c00517 ldw r23,20(r16) 4afbc: 95c05836 bltu r18,r23,4b120 <__sfvwrite_r+0x320> 4afc0: 00a00034 movhi r2,32768 4afc4: 10bfffc4 addi r2,r2,-1 4afc8: 9009883a mov r4,r18 4afcc: 1480012e bgeu r2,r18,4afd4 <__sfvwrite_r+0x1d4> 4afd0: 1009883a mov r4,r2 4afd4: b80b883a mov r5,r23 4afd8: 004c8440 call 4c844 <__divsi3> 4afdc: b80b883a mov r5,r23 4afe0: 1009883a mov r4,r2 4afe4: 004c9f80 call 4c9f8 <__mulsi3> 4afe8: 81400717 ldw r5,28(r16) 4afec: 80c00917 ldw r3,36(r16) 4aff0: 100f883a mov r7,r2 4aff4: e00d883a mov r6,fp 4aff8: a809883a mov r4,r21 4affc: 183ee83a callr r3 4b000: 00bfd816 blt zero,r2,4af64 <__alt_data_end+0xfffd8f64> 4b004: 8080030b ldhu r2,12(r16) 4b008: 10801014 ori r2,r2,64 4b00c: 8080030d sth r2,12(r16) 4b010: 00bfffc4 movi r2,-1 4b014: 003fa806 br 4aeb8 <__alt_data_end+0xfffd8eb8> 4b018: 0027883a mov r19,zero 4b01c: 0011883a mov r8,zero 4b020: 0039883a mov fp,zero 4b024: 0025883a mov r18,zero 4b028: 90001f26 beq r18,zero,4b0a8 <__sfvwrite_r+0x2a8> 4b02c: 40005a26 beq r8,zero,4b198 <__sfvwrite_r+0x398> 4b030: 982d883a mov r22,r19 4b034: 94c0012e bgeu r18,r19,4b03c <__sfvwrite_r+0x23c> 4b038: 902d883a mov r22,r18 4b03c: 81000017 ldw r4,0(r16) 4b040: 80800417 ldw r2,16(r16) 4b044: b02f883a mov r23,r22 4b048: 81c00517 ldw r7,20(r16) 4b04c: 1100032e bgeu r2,r4,4b05c <__sfvwrite_r+0x25c> 4b050: 80c00217 ldw r3,8(r16) 4b054: 38c7883a add r3,r7,r3 4b058: 1d801816 blt r3,r22,4b0bc <__sfvwrite_r+0x2bc> 4b05c: b1c03e16 blt r22,r7,4b158 <__sfvwrite_r+0x358> 4b060: 80800917 ldw r2,36(r16) 4b064: 81400717 ldw r5,28(r16) 4b068: e00d883a mov r6,fp 4b06c: da000115 stw r8,4(sp) 4b070: a809883a mov r4,r21 4b074: 103ee83a callr r2 4b078: 102f883a mov r23,r2 4b07c: da000117 ldw r8,4(sp) 4b080: 00bfe00e bge zero,r2,4b004 <__alt_data_end+0xfffd9004> 4b084: 9de7c83a sub r19,r19,r23 4b088: 98001f26 beq r19,zero,4b108 <__sfvwrite_r+0x308> 4b08c: a0800217 ldw r2,8(r20) 4b090: e5f9883a add fp,fp,r23 4b094: 95e5c83a sub r18,r18,r23 4b098: 15efc83a sub r23,r2,r23 4b09c: a5c00215 stw r23,8(r20) 4b0a0: b83f8426 beq r23,zero,4aeb4 <__alt_data_end+0xfffd8eb4> 4b0a4: 903fe11e bne r18,zero,4b02c <__alt_data_end+0xfffd902c> 4b0a8: 8f000017 ldw fp,0(r17) 4b0ac: 8c800117 ldw r18,4(r17) 4b0b0: 0011883a mov r8,zero 4b0b4: 8c400204 addi r17,r17,8 4b0b8: 003fdb06 br 4b028 <__alt_data_end+0xfffd9028> 4b0bc: 180d883a mov r6,r3 4b0c0: e00b883a mov r5,fp 4b0c4: da000115 stw r8,4(sp) 4b0c8: d8c00015 stw r3,0(sp) 4b0cc: 004b37c0 call 4b37c 4b0d0: d8c00017 ldw r3,0(sp) 4b0d4: 80800017 ldw r2,0(r16) 4b0d8: 800b883a mov r5,r16 4b0dc: a809883a mov r4,r21 4b0e0: 10c5883a add r2,r2,r3 4b0e4: 80800015 stw r2,0(r16) 4b0e8: d8c00015 stw r3,0(sp) 4b0ec: 00461400 call 46140 <_fflush_r> 4b0f0: d8c00017 ldw r3,0(sp) 4b0f4: da000117 ldw r8,4(sp) 4b0f8: 103fc21e bne r2,zero,4b004 <__alt_data_end+0xfffd9004> 4b0fc: 182f883a mov r23,r3 4b100: 9de7c83a sub r19,r19,r23 4b104: 983fe11e bne r19,zero,4b08c <__alt_data_end+0xfffd908c> 4b108: 800b883a mov r5,r16 4b10c: a809883a mov r4,r21 4b110: 00461400 call 46140 <_fflush_r> 4b114: 103fbb1e bne r2,zero,4b004 <__alt_data_end+0xfffd9004> 4b118: 0011883a mov r8,zero 4b11c: 003fdb06 br 4b08c <__alt_data_end+0xfffd908c> 4b120: 94c0012e bgeu r18,r19,4b128 <__sfvwrite_r+0x328> 4b124: 9027883a mov r19,r18 4b128: 980d883a mov r6,r19 4b12c: e00b883a mov r5,fp 4b130: 004b37c0 call 4b37c 4b134: 80800217 ldw r2,8(r16) 4b138: 80c00017 ldw r3,0(r16) 4b13c: 14c5c83a sub r2,r2,r19 4b140: 1cc7883a add r3,r3,r19 4b144: 80800215 stw r2,8(r16) 4b148: 80c00015 stw r3,0(r16) 4b14c: 10004326 beq r2,zero,4b25c <__sfvwrite_r+0x45c> 4b150: 9805883a mov r2,r19 4b154: 003f8306 br 4af64 <__alt_data_end+0xfffd8f64> 4b158: b00d883a mov r6,r22 4b15c: e00b883a mov r5,fp 4b160: da000115 stw r8,4(sp) 4b164: 004b37c0 call 4b37c 4b168: 80800217 ldw r2,8(r16) 4b16c: 80c00017 ldw r3,0(r16) 4b170: da000117 ldw r8,4(sp) 4b174: 1585c83a sub r2,r2,r22 4b178: 1dad883a add r22,r3,r22 4b17c: 80800215 stw r2,8(r16) 4b180: 85800015 stw r22,0(r16) 4b184: 003fbf06 br 4b084 <__alt_data_end+0xfffd9084> 4b188: 81000017 ldw r4,0(r16) 4b18c: 9027883a mov r19,r18 4b190: 902f883a mov r23,r18 4b194: 003f6906 br 4af3c <__alt_data_end+0xfffd8f3c> 4b198: 900d883a mov r6,r18 4b19c: 01400284 movi r5,10 4b1a0: e009883a mov r4,fp 4b1a4: 00475dc0 call 475dc 4b1a8: 10003e26 beq r2,zero,4b2a4 <__sfvwrite_r+0x4a4> 4b1ac: 10800044 addi r2,r2,1 4b1b0: 1727c83a sub r19,r2,fp 4b1b4: 02000044 movi r8,1 4b1b8: 003f9d06 br 4b030 <__alt_data_end+0xfffd9030> 4b1bc: 80800517 ldw r2,20(r16) 4b1c0: 81400417 ldw r5,16(r16) 4b1c4: 81c00017 ldw r7,0(r16) 4b1c8: 10a7883a add r19,r2,r2 4b1cc: 9885883a add r2,r19,r2 4b1d0: 1026d7fa srli r19,r2,31 4b1d4: 396dc83a sub r22,r7,r5 4b1d8: b1000044 addi r4,r22,1 4b1dc: 9885883a add r2,r19,r2 4b1e0: 1027d07a srai r19,r2,1 4b1e4: 2485883a add r2,r4,r18 4b1e8: 980d883a mov r6,r19 4b1ec: 9880022e bgeu r19,r2,4b1f8 <__sfvwrite_r+0x3f8> 4b1f0: 1027883a mov r19,r2 4b1f4: 100d883a mov r6,r2 4b1f8: 18c1000c andi r3,r3,1024 4b1fc: 18001c26 beq r3,zero,4b270 <__sfvwrite_r+0x470> 4b200: 300b883a mov r5,r6 4b204: a809883a mov r4,r21 4b208: 0046dd00 call 46dd0 <_malloc_r> 4b20c: 102f883a mov r23,r2 4b210: 10002926 beq r2,zero,4b2b8 <__sfvwrite_r+0x4b8> 4b214: 81400417 ldw r5,16(r16) 4b218: b00d883a mov r6,r22 4b21c: 1009883a mov r4,r2 4b220: 00476c00 call 476c0 4b224: 8080030b ldhu r2,12(r16) 4b228: 00fedfc4 movi r3,-1153 4b22c: 10c4703a and r2,r2,r3 4b230: 10802014 ori r2,r2,128 4b234: 8080030d sth r2,12(r16) 4b238: bd89883a add r4,r23,r22 4b23c: 9d8fc83a sub r7,r19,r22 4b240: 85c00415 stw r23,16(r16) 4b244: 84c00515 stw r19,20(r16) 4b248: 81000015 stw r4,0(r16) 4b24c: 9027883a mov r19,r18 4b250: 81c00215 stw r7,8(r16) 4b254: 902f883a mov r23,r18 4b258: 003f3806 br 4af3c <__alt_data_end+0xfffd8f3c> 4b25c: 800b883a mov r5,r16 4b260: a809883a mov r4,r21 4b264: 00461400 call 46140 <_fflush_r> 4b268: 103fb926 beq r2,zero,4b150 <__alt_data_end+0xfffd9150> 4b26c: 003f6506 br 4b004 <__alt_data_end+0xfffd9004> 4b270: a809883a mov r4,r21 4b274: 004b5380 call 4b538 <_realloc_r> 4b278: 102f883a mov r23,r2 4b27c: 103fee1e bne r2,zero,4b238 <__alt_data_end+0xfffd9238> 4b280: 81400417 ldw r5,16(r16) 4b284: a809883a mov r4,r21 4b288: 00466a00 call 466a0 <_free_r> 4b28c: 8080030b ldhu r2,12(r16) 4b290: 00ffdfc4 movi r3,-129 4b294: 1884703a and r2,r3,r2 4b298: 00c00304 movi r3,12 4b29c: a8c00015 stw r3,0(r21) 4b2a0: 003f5906 br 4b008 <__alt_data_end+0xfffd9008> 4b2a4: 94c00044 addi r19,r18,1 4b2a8: 02000044 movi r8,1 4b2ac: 003f6006 br 4b030 <__alt_data_end+0xfffd9030> 4b2b0: 00bfffc4 movi r2,-1 4b2b4: 003f0006 br 4aeb8 <__alt_data_end+0xfffd8eb8> 4b2b8: 00800304 movi r2,12 4b2bc: a8800015 stw r2,0(r21) 4b2c0: 8080030b ldhu r2,12(r16) 4b2c4: 003f5006 br 4b008 <__alt_data_end+0xfffd9008> 0004b2c8 <_isatty_r>: 4b2c8: defffd04 addi sp,sp,-12 4b2cc: dc000015 stw r16,0(sp) 4b2d0: 04000174 movhi r16,5 4b2d4: dc400115 stw r17,4(sp) 4b2d8: 8417ab04 addi r16,r16,24236 4b2dc: 2023883a mov r17,r4 4b2e0: 2809883a mov r4,r5 4b2e4: dfc00215 stw ra,8(sp) 4b2e8: 80000015 stw zero,0(r16) 4b2ec: 004eac80 call 4eac8 4b2f0: 00ffffc4 movi r3,-1 4b2f4: 10c00526 beq r2,r3,4b30c <_isatty_r+0x44> 4b2f8: dfc00217 ldw ra,8(sp) 4b2fc: dc400117 ldw r17,4(sp) 4b300: dc000017 ldw r16,0(sp) 4b304: dec00304 addi sp,sp,12 4b308: f800283a ret 4b30c: 80c00017 ldw r3,0(r16) 4b310: 183ff926 beq r3,zero,4b2f8 <__alt_data_end+0xfffd92f8> 4b314: 88c00015 stw r3,0(r17) 4b318: 003ff706 br 4b2f8 <__alt_data_end+0xfffd92f8> 0004b31c <_lseek_r>: 4b31c: defffd04 addi sp,sp,-12 4b320: 2805883a mov r2,r5 4b324: dc000015 stw r16,0(sp) 4b328: 04000174 movhi r16,5 4b32c: dc400115 stw r17,4(sp) 4b330: 300b883a mov r5,r6 4b334: 8417ab04 addi r16,r16,24236 4b338: 2023883a mov r17,r4 4b33c: 380d883a mov r6,r7 4b340: 1009883a mov r4,r2 4b344: dfc00215 stw ra,8(sp) 4b348: 80000015 stw zero,0(r16) 4b34c: 004ec9c0 call 4ec9c 4b350: 00ffffc4 movi r3,-1 4b354: 10c00526 beq r2,r3,4b36c <_lseek_r+0x50> 4b358: dfc00217 ldw ra,8(sp) 4b35c: dc400117 ldw r17,4(sp) 4b360: dc000017 ldw r16,0(sp) 4b364: dec00304 addi sp,sp,12 4b368: f800283a ret 4b36c: 80c00017 ldw r3,0(r16) 4b370: 183ff926 beq r3,zero,4b358 <__alt_data_end+0xfffd9358> 4b374: 88c00015 stw r3,0(r17) 4b378: 003ff706 br 4b358 <__alt_data_end+0xfffd9358> 0004b37c : 4b37c: 2005883a mov r2,r4 4b380: 29000b2e bgeu r5,r4,4b3b0 4b384: 298f883a add r7,r5,r6 4b388: 21c0092e bgeu r4,r7,4b3b0 4b38c: 2187883a add r3,r4,r6 4b390: 198bc83a sub r5,r3,r6 4b394: 30004826 beq r6,zero,4b4b8 4b398: 39ffffc4 addi r7,r7,-1 4b39c: 39000003 ldbu r4,0(r7) 4b3a0: 18ffffc4 addi r3,r3,-1 4b3a4: 19000005 stb r4,0(r3) 4b3a8: 28fffb1e bne r5,r3,4b398 <__alt_data_end+0xfffd9398> 4b3ac: f800283a ret 4b3b0: 00c003c4 movi r3,15 4b3b4: 1980412e bgeu r3,r6,4b4bc 4b3b8: 2886b03a or r3,r5,r2 4b3bc: 18c000cc andi r3,r3,3 4b3c0: 1800401e bne r3,zero,4b4c4 4b3c4: 33fffc04 addi r15,r6,-16 4b3c8: 781ed13a srli r15,r15,4 4b3cc: 28c00104 addi r3,r5,4 4b3d0: 13400104 addi r13,r2,4 4b3d4: 781c913a slli r14,r15,4 4b3d8: 2b000204 addi r12,r5,8 4b3dc: 12c00204 addi r11,r2,8 4b3e0: 73800504 addi r14,r14,20 4b3e4: 2a800304 addi r10,r5,12 4b3e8: 12400304 addi r9,r2,12 4b3ec: 2b9d883a add r14,r5,r14 4b3f0: 2811883a mov r8,r5 4b3f4: 100f883a mov r7,r2 4b3f8: 41000017 ldw r4,0(r8) 4b3fc: 39c00404 addi r7,r7,16 4b400: 18c00404 addi r3,r3,16 4b404: 393ffc15 stw r4,-16(r7) 4b408: 193ffc17 ldw r4,-16(r3) 4b40c: 6b400404 addi r13,r13,16 4b410: 5ac00404 addi r11,r11,16 4b414: 693ffc15 stw r4,-16(r13) 4b418: 61000017 ldw r4,0(r12) 4b41c: 4a400404 addi r9,r9,16 4b420: 42000404 addi r8,r8,16 4b424: 593ffc15 stw r4,-16(r11) 4b428: 51000017 ldw r4,0(r10) 4b42c: 63000404 addi r12,r12,16 4b430: 52800404 addi r10,r10,16 4b434: 493ffc15 stw r4,-16(r9) 4b438: 1bbfef1e bne r3,r14,4b3f8 <__alt_data_end+0xfffd93f8> 4b43c: 79000044 addi r4,r15,1 4b440: 2008913a slli r4,r4,4 4b444: 328003cc andi r10,r6,15 4b448: 02c000c4 movi r11,3 4b44c: 1107883a add r3,r2,r4 4b450: 290b883a add r5,r5,r4 4b454: 5a801e2e bgeu r11,r10,4b4d0 4b458: 1813883a mov r9,r3 4b45c: 2811883a mov r8,r5 4b460: 500f883a mov r7,r10 4b464: 41000017 ldw r4,0(r8) 4b468: 4a400104 addi r9,r9,4 4b46c: 39ffff04 addi r7,r7,-4 4b470: 493fff15 stw r4,-4(r9) 4b474: 42000104 addi r8,r8,4 4b478: 59fffa36 bltu r11,r7,4b464 <__alt_data_end+0xfffd9464> 4b47c: 513fff04 addi r4,r10,-4 4b480: 2008d0ba srli r4,r4,2 4b484: 318000cc andi r6,r6,3 4b488: 21000044 addi r4,r4,1 4b48c: 2109883a add r4,r4,r4 4b490: 2109883a add r4,r4,r4 4b494: 1907883a add r3,r3,r4 4b498: 290b883a add r5,r5,r4 4b49c: 30000b26 beq r6,zero,4b4cc 4b4a0: 198d883a add r6,r3,r6 4b4a4: 29c00003 ldbu r7,0(r5) 4b4a8: 18c00044 addi r3,r3,1 4b4ac: 29400044 addi r5,r5,1 4b4b0: 19ffffc5 stb r7,-1(r3) 4b4b4: 19bffb1e bne r3,r6,4b4a4 <__alt_data_end+0xfffd94a4> 4b4b8: f800283a ret 4b4bc: 1007883a mov r3,r2 4b4c0: 003ff606 br 4b49c <__alt_data_end+0xfffd949c> 4b4c4: 1007883a mov r3,r2 4b4c8: 003ff506 br 4b4a0 <__alt_data_end+0xfffd94a0> 4b4cc: f800283a ret 4b4d0: 500d883a mov r6,r10 4b4d4: 003ff106 br 4b49c <__alt_data_end+0xfffd949c> 0004b4d8 <_read_r>: 4b4d8: defffd04 addi sp,sp,-12 4b4dc: 2805883a mov r2,r5 4b4e0: dc000015 stw r16,0(sp) 4b4e4: 04000174 movhi r16,5 4b4e8: dc400115 stw r17,4(sp) 4b4ec: 300b883a mov r5,r6 4b4f0: 8417ab04 addi r16,r16,24236 4b4f4: 2023883a mov r17,r4 4b4f8: 380d883a mov r6,r7 4b4fc: 1009883a mov r4,r2 4b500: dfc00215 stw ra,8(sp) 4b504: 80000015 stw zero,0(r16) 4b508: 004ee780 call 4ee78 4b50c: 00ffffc4 movi r3,-1 4b510: 10c00526 beq r2,r3,4b528 <_read_r+0x50> 4b514: dfc00217 ldw ra,8(sp) 4b518: dc400117 ldw r17,4(sp) 4b51c: dc000017 ldw r16,0(sp) 4b520: dec00304 addi sp,sp,12 4b524: f800283a ret 4b528: 80c00017 ldw r3,0(r16) 4b52c: 183ff926 beq r3,zero,4b514 <__alt_data_end+0xfffd9514> 4b530: 88c00015 stw r3,0(r17) 4b534: 003ff706 br 4b514 <__alt_data_end+0xfffd9514> 0004b538 <_realloc_r>: 4b538: defff604 addi sp,sp,-40 4b53c: dc800215 stw r18,8(sp) 4b540: dfc00915 stw ra,36(sp) 4b544: df000815 stw fp,32(sp) 4b548: ddc00715 stw r23,28(sp) 4b54c: dd800615 stw r22,24(sp) 4b550: dd400515 stw r21,20(sp) 4b554: dd000415 stw r20,16(sp) 4b558: dcc00315 stw r19,12(sp) 4b55c: dc400115 stw r17,4(sp) 4b560: dc000015 stw r16,0(sp) 4b564: 3025883a mov r18,r6 4b568: 2800b726 beq r5,zero,4b848 <_realloc_r+0x310> 4b56c: 282b883a mov r21,r5 4b570: 2029883a mov r20,r4 4b574: 004edf40 call 4edf4 <__malloc_lock> 4b578: a8bfff17 ldw r2,-4(r21) 4b57c: 043fff04 movi r16,-4 4b580: 90c002c4 addi r3,r18,11 4b584: 01000584 movi r4,22 4b588: acfffe04 addi r19,r21,-8 4b58c: 1420703a and r16,r2,r16 4b590: 20c0332e bgeu r4,r3,4b660 <_realloc_r+0x128> 4b594: 047ffe04 movi r17,-8 4b598: 1c62703a and r17,r3,r17 4b59c: 8807883a mov r3,r17 4b5a0: 88005816 blt r17,zero,4b704 <_realloc_r+0x1cc> 4b5a4: 8c805736 bltu r17,r18,4b704 <_realloc_r+0x1cc> 4b5a8: 80c0300e bge r16,r3,4b66c <_realloc_r+0x134> 4b5ac: 07000174 movhi fp,5 4b5b0: e70abe04 addi fp,fp,11000 4b5b4: e1c00217 ldw r7,8(fp) 4b5b8: 9c09883a add r4,r19,r16 4b5bc: 22000117 ldw r8,4(r4) 4b5c0: 21c06326 beq r4,r7,4b750 <_realloc_r+0x218> 4b5c4: 017fff84 movi r5,-2 4b5c8: 414a703a and r5,r8,r5 4b5cc: 214b883a add r5,r4,r5 4b5d0: 29800117 ldw r6,4(r5) 4b5d4: 3180004c andi r6,r6,1 4b5d8: 30003f26 beq r6,zero,4b6d8 <_realloc_r+0x1a0> 4b5dc: 1080004c andi r2,r2,1 4b5e0: 10008326 beq r2,zero,4b7f0 <_realloc_r+0x2b8> 4b5e4: 900b883a mov r5,r18 4b5e8: a009883a mov r4,r20 4b5ec: 0046dd00 call 46dd0 <_malloc_r> 4b5f0: 1025883a mov r18,r2 4b5f4: 10011e26 beq r2,zero,4ba70 <_realloc_r+0x538> 4b5f8: a93fff17 ldw r4,-4(r21) 4b5fc: 10fffe04 addi r3,r2,-8 4b600: 00bfff84 movi r2,-2 4b604: 2084703a and r2,r4,r2 4b608: 9885883a add r2,r19,r2 4b60c: 1880ee26 beq r3,r2,4b9c8 <_realloc_r+0x490> 4b610: 81bfff04 addi r6,r16,-4 4b614: 00800904 movi r2,36 4b618: 1180b836 bltu r2,r6,4b8fc <_realloc_r+0x3c4> 4b61c: 00c004c4 movi r3,19 4b620: 19809636 bltu r3,r6,4b87c <_realloc_r+0x344> 4b624: 9005883a mov r2,r18 4b628: a807883a mov r3,r21 4b62c: 19000017 ldw r4,0(r3) 4b630: 11000015 stw r4,0(r2) 4b634: 19000117 ldw r4,4(r3) 4b638: 11000115 stw r4,4(r2) 4b63c: 18c00217 ldw r3,8(r3) 4b640: 10c00215 stw r3,8(r2) 4b644: a80b883a mov r5,r21 4b648: a009883a mov r4,r20 4b64c: 00466a00 call 466a0 <_free_r> 4b650: a009883a mov r4,r20 4b654: 004ee180 call 4ee18 <__malloc_unlock> 4b658: 9005883a mov r2,r18 4b65c: 00001206 br 4b6a8 <_realloc_r+0x170> 4b660: 00c00404 movi r3,16 4b664: 1823883a mov r17,r3 4b668: 003fce06 br 4b5a4 <__alt_data_end+0xfffd95a4> 4b66c: a825883a mov r18,r21 4b670: 8445c83a sub r2,r16,r17 4b674: 00c003c4 movi r3,15 4b678: 18802636 bltu r3,r2,4b714 <_realloc_r+0x1dc> 4b67c: 99800117 ldw r6,4(r19) 4b680: 9c07883a add r3,r19,r16 4b684: 3180004c andi r6,r6,1 4b688: 3420b03a or r16,r6,r16 4b68c: 9c000115 stw r16,4(r19) 4b690: 18800117 ldw r2,4(r3) 4b694: 10800054 ori r2,r2,1 4b698: 18800115 stw r2,4(r3) 4b69c: a009883a mov r4,r20 4b6a0: 004ee180 call 4ee18 <__malloc_unlock> 4b6a4: 9005883a mov r2,r18 4b6a8: dfc00917 ldw ra,36(sp) 4b6ac: df000817 ldw fp,32(sp) 4b6b0: ddc00717 ldw r23,28(sp) 4b6b4: dd800617 ldw r22,24(sp) 4b6b8: dd400517 ldw r21,20(sp) 4b6bc: dd000417 ldw r20,16(sp) 4b6c0: dcc00317 ldw r19,12(sp) 4b6c4: dc800217 ldw r18,8(sp) 4b6c8: dc400117 ldw r17,4(sp) 4b6cc: dc000017 ldw r16,0(sp) 4b6d0: dec00a04 addi sp,sp,40 4b6d4: f800283a ret 4b6d8: 017fff04 movi r5,-4 4b6dc: 414a703a and r5,r8,r5 4b6e0: 814d883a add r6,r16,r5 4b6e4: 30c01f16 blt r6,r3,4b764 <_realloc_r+0x22c> 4b6e8: 20800317 ldw r2,12(r4) 4b6ec: 20c00217 ldw r3,8(r4) 4b6f0: a825883a mov r18,r21 4b6f4: 3021883a mov r16,r6 4b6f8: 18800315 stw r2,12(r3) 4b6fc: 10c00215 stw r3,8(r2) 4b700: 003fdb06 br 4b670 <__alt_data_end+0xfffd9670> 4b704: 00800304 movi r2,12 4b708: a0800015 stw r2,0(r20) 4b70c: 0005883a mov r2,zero 4b710: 003fe506 br 4b6a8 <__alt_data_end+0xfffd96a8> 4b714: 98c00117 ldw r3,4(r19) 4b718: 9c4b883a add r5,r19,r17 4b71c: 11000054 ori r4,r2,1 4b720: 18c0004c andi r3,r3,1 4b724: 1c62b03a or r17,r3,r17 4b728: 9c400115 stw r17,4(r19) 4b72c: 29000115 stw r4,4(r5) 4b730: 2885883a add r2,r5,r2 4b734: 10c00117 ldw r3,4(r2) 4b738: 29400204 addi r5,r5,8 4b73c: a009883a mov r4,r20 4b740: 18c00054 ori r3,r3,1 4b744: 10c00115 stw r3,4(r2) 4b748: 00466a00 call 466a0 <_free_r> 4b74c: 003fd306 br 4b69c <__alt_data_end+0xfffd969c> 4b750: 017fff04 movi r5,-4 4b754: 414a703a and r5,r8,r5 4b758: 89800404 addi r6,r17,16 4b75c: 8151883a add r8,r16,r5 4b760: 4180590e bge r8,r6,4b8c8 <_realloc_r+0x390> 4b764: 1080004c andi r2,r2,1 4b768: 103f9e1e bne r2,zero,4b5e4 <__alt_data_end+0xfffd95e4> 4b76c: adbffe17 ldw r22,-8(r21) 4b770: 00bfff04 movi r2,-4 4b774: 9dadc83a sub r22,r19,r22 4b778: b1800117 ldw r6,4(r22) 4b77c: 3084703a and r2,r6,r2 4b780: 20002026 beq r4,zero,4b804 <_realloc_r+0x2cc> 4b784: 80af883a add r23,r16,r2 4b788: b96f883a add r23,r23,r5 4b78c: 21c05f26 beq r4,r7,4b90c <_realloc_r+0x3d4> 4b790: b8c01c16 blt r23,r3,4b804 <_realloc_r+0x2cc> 4b794: 20800317 ldw r2,12(r4) 4b798: 20c00217 ldw r3,8(r4) 4b79c: 81bfff04 addi r6,r16,-4 4b7a0: 01000904 movi r4,36 4b7a4: 18800315 stw r2,12(r3) 4b7a8: 10c00215 stw r3,8(r2) 4b7ac: b0c00217 ldw r3,8(r22) 4b7b0: b0800317 ldw r2,12(r22) 4b7b4: b4800204 addi r18,r22,8 4b7b8: 18800315 stw r2,12(r3) 4b7bc: 10c00215 stw r3,8(r2) 4b7c0: 21801b36 bltu r4,r6,4b830 <_realloc_r+0x2f8> 4b7c4: 008004c4 movi r2,19 4b7c8: 1180352e bgeu r2,r6,4b8a0 <_realloc_r+0x368> 4b7cc: a8800017 ldw r2,0(r21) 4b7d0: b0800215 stw r2,8(r22) 4b7d4: a8800117 ldw r2,4(r21) 4b7d8: b0800315 stw r2,12(r22) 4b7dc: 008006c4 movi r2,27 4b7e0: 11807f36 bltu r2,r6,4b9e0 <_realloc_r+0x4a8> 4b7e4: b0800404 addi r2,r22,16 4b7e8: ad400204 addi r21,r21,8 4b7ec: 00002d06 br 4b8a4 <_realloc_r+0x36c> 4b7f0: adbffe17 ldw r22,-8(r21) 4b7f4: 00bfff04 movi r2,-4 4b7f8: 9dadc83a sub r22,r19,r22 4b7fc: b1000117 ldw r4,4(r22) 4b800: 2084703a and r2,r4,r2 4b804: b03f7726 beq r22,zero,4b5e4 <__alt_data_end+0xfffd95e4> 4b808: 80af883a add r23,r16,r2 4b80c: b8ff7516 blt r23,r3,4b5e4 <__alt_data_end+0xfffd95e4> 4b810: b0800317 ldw r2,12(r22) 4b814: b0c00217 ldw r3,8(r22) 4b818: 81bfff04 addi r6,r16,-4 4b81c: 01000904 movi r4,36 4b820: 18800315 stw r2,12(r3) 4b824: 10c00215 stw r3,8(r2) 4b828: b4800204 addi r18,r22,8 4b82c: 21bfe52e bgeu r4,r6,4b7c4 <__alt_data_end+0xfffd97c4> 4b830: a80b883a mov r5,r21 4b834: 9009883a mov r4,r18 4b838: 004b37c0 call 4b37c 4b83c: b821883a mov r16,r23 4b840: b027883a mov r19,r22 4b844: 003f8a06 br 4b670 <__alt_data_end+0xfffd9670> 4b848: 300b883a mov r5,r6 4b84c: dfc00917 ldw ra,36(sp) 4b850: df000817 ldw fp,32(sp) 4b854: ddc00717 ldw r23,28(sp) 4b858: dd800617 ldw r22,24(sp) 4b85c: dd400517 ldw r21,20(sp) 4b860: dd000417 ldw r20,16(sp) 4b864: dcc00317 ldw r19,12(sp) 4b868: dc800217 ldw r18,8(sp) 4b86c: dc400117 ldw r17,4(sp) 4b870: dc000017 ldw r16,0(sp) 4b874: dec00a04 addi sp,sp,40 4b878: 0046dd01 jmpi 46dd0 <_malloc_r> 4b87c: a8c00017 ldw r3,0(r21) 4b880: 90c00015 stw r3,0(r18) 4b884: a8c00117 ldw r3,4(r21) 4b888: 90c00115 stw r3,4(r18) 4b88c: 00c006c4 movi r3,27 4b890: 19804536 bltu r3,r6,4b9a8 <_realloc_r+0x470> 4b894: 90800204 addi r2,r18,8 4b898: a8c00204 addi r3,r21,8 4b89c: 003f6306 br 4b62c <__alt_data_end+0xfffd962c> 4b8a0: 9005883a mov r2,r18 4b8a4: a8c00017 ldw r3,0(r21) 4b8a8: b821883a mov r16,r23 4b8ac: b027883a mov r19,r22 4b8b0: 10c00015 stw r3,0(r2) 4b8b4: a8c00117 ldw r3,4(r21) 4b8b8: 10c00115 stw r3,4(r2) 4b8bc: a8c00217 ldw r3,8(r21) 4b8c0: 10c00215 stw r3,8(r2) 4b8c4: 003f6a06 br 4b670 <__alt_data_end+0xfffd9670> 4b8c8: 9c67883a add r19,r19,r17 4b8cc: 4445c83a sub r2,r8,r17 4b8d0: e4c00215 stw r19,8(fp) 4b8d4: 10800054 ori r2,r2,1 4b8d8: 98800115 stw r2,4(r19) 4b8dc: a8bfff17 ldw r2,-4(r21) 4b8e0: a009883a mov r4,r20 4b8e4: 1080004c andi r2,r2,1 4b8e8: 1462b03a or r17,r2,r17 4b8ec: ac7fff15 stw r17,-4(r21) 4b8f0: 004ee180 call 4ee18 <__malloc_unlock> 4b8f4: a805883a mov r2,r21 4b8f8: 003f6b06 br 4b6a8 <__alt_data_end+0xfffd96a8> 4b8fc: a80b883a mov r5,r21 4b900: 9009883a mov r4,r18 4b904: 004b37c0 call 4b37c 4b908: 003f4e06 br 4b644 <__alt_data_end+0xfffd9644> 4b90c: 89000404 addi r4,r17,16 4b910: b93fbc16 blt r23,r4,4b804 <__alt_data_end+0xfffd9804> 4b914: b0800317 ldw r2,12(r22) 4b918: b0c00217 ldw r3,8(r22) 4b91c: 81bfff04 addi r6,r16,-4 4b920: 01000904 movi r4,36 4b924: 18800315 stw r2,12(r3) 4b928: 10c00215 stw r3,8(r2) 4b92c: b4800204 addi r18,r22,8 4b930: 21804336 bltu r4,r6,4ba40 <_realloc_r+0x508> 4b934: 008004c4 movi r2,19 4b938: 11803f2e bgeu r2,r6,4ba38 <_realloc_r+0x500> 4b93c: a8800017 ldw r2,0(r21) 4b940: b0800215 stw r2,8(r22) 4b944: a8800117 ldw r2,4(r21) 4b948: b0800315 stw r2,12(r22) 4b94c: 008006c4 movi r2,27 4b950: 11803f36 bltu r2,r6,4ba50 <_realloc_r+0x518> 4b954: b0800404 addi r2,r22,16 4b958: ad400204 addi r21,r21,8 4b95c: a8c00017 ldw r3,0(r21) 4b960: 10c00015 stw r3,0(r2) 4b964: a8c00117 ldw r3,4(r21) 4b968: 10c00115 stw r3,4(r2) 4b96c: a8c00217 ldw r3,8(r21) 4b970: 10c00215 stw r3,8(r2) 4b974: b447883a add r3,r22,r17 4b978: bc45c83a sub r2,r23,r17 4b97c: e0c00215 stw r3,8(fp) 4b980: 10800054 ori r2,r2,1 4b984: 18800115 stw r2,4(r3) 4b988: b0800117 ldw r2,4(r22) 4b98c: a009883a mov r4,r20 4b990: 1080004c andi r2,r2,1 4b994: 1462b03a or r17,r2,r17 4b998: b4400115 stw r17,4(r22) 4b99c: 004ee180 call 4ee18 <__malloc_unlock> 4b9a0: 9005883a mov r2,r18 4b9a4: 003f4006 br 4b6a8 <__alt_data_end+0xfffd96a8> 4b9a8: a8c00217 ldw r3,8(r21) 4b9ac: 90c00215 stw r3,8(r18) 4b9b0: a8c00317 ldw r3,12(r21) 4b9b4: 90c00315 stw r3,12(r18) 4b9b8: 30801126 beq r6,r2,4ba00 <_realloc_r+0x4c8> 4b9bc: 90800404 addi r2,r18,16 4b9c0: a8c00404 addi r3,r21,16 4b9c4: 003f1906 br 4b62c <__alt_data_end+0xfffd962c> 4b9c8: 90ffff17 ldw r3,-4(r18) 4b9cc: 00bfff04 movi r2,-4 4b9d0: a825883a mov r18,r21 4b9d4: 1884703a and r2,r3,r2 4b9d8: 80a1883a add r16,r16,r2 4b9dc: 003f2406 br 4b670 <__alt_data_end+0xfffd9670> 4b9e0: a8800217 ldw r2,8(r21) 4b9e4: b0800415 stw r2,16(r22) 4b9e8: a8800317 ldw r2,12(r21) 4b9ec: b0800515 stw r2,20(r22) 4b9f0: 31000a26 beq r6,r4,4ba1c <_realloc_r+0x4e4> 4b9f4: b0800604 addi r2,r22,24 4b9f8: ad400404 addi r21,r21,16 4b9fc: 003fa906 br 4b8a4 <__alt_data_end+0xfffd98a4> 4ba00: a9000417 ldw r4,16(r21) 4ba04: 90800604 addi r2,r18,24 4ba08: a8c00604 addi r3,r21,24 4ba0c: 91000415 stw r4,16(r18) 4ba10: a9000517 ldw r4,20(r21) 4ba14: 91000515 stw r4,20(r18) 4ba18: 003f0406 br 4b62c <__alt_data_end+0xfffd962c> 4ba1c: a8c00417 ldw r3,16(r21) 4ba20: ad400604 addi r21,r21,24 4ba24: b0800804 addi r2,r22,32 4ba28: b0c00615 stw r3,24(r22) 4ba2c: a8ffff17 ldw r3,-4(r21) 4ba30: b0c00715 stw r3,28(r22) 4ba34: 003f9b06 br 4b8a4 <__alt_data_end+0xfffd98a4> 4ba38: 9005883a mov r2,r18 4ba3c: 003fc706 br 4b95c <__alt_data_end+0xfffd995c> 4ba40: a80b883a mov r5,r21 4ba44: 9009883a mov r4,r18 4ba48: 004b37c0 call 4b37c 4ba4c: 003fc906 br 4b974 <__alt_data_end+0xfffd9974> 4ba50: a8800217 ldw r2,8(r21) 4ba54: b0800415 stw r2,16(r22) 4ba58: a8800317 ldw r2,12(r21) 4ba5c: b0800515 stw r2,20(r22) 4ba60: 31000726 beq r6,r4,4ba80 <_realloc_r+0x548> 4ba64: b0800604 addi r2,r22,24 4ba68: ad400404 addi r21,r21,16 4ba6c: 003fbb06 br 4b95c <__alt_data_end+0xfffd995c> 4ba70: a009883a mov r4,r20 4ba74: 004ee180 call 4ee18 <__malloc_unlock> 4ba78: 0005883a mov r2,zero 4ba7c: 003f0a06 br 4b6a8 <__alt_data_end+0xfffd96a8> 4ba80: a8c00417 ldw r3,16(r21) 4ba84: ad400604 addi r21,r21,24 4ba88: b0800804 addi r2,r22,32 4ba8c: b0c00615 stw r3,24(r22) 4ba90: a8ffff17 ldw r3,-4(r21) 4ba94: b0c00715 stw r3,28(r22) 4ba98: 003fb006 br 4b95c <__alt_data_end+0xfffd995c> 0004ba9c <_wcrtomb_r>: 4ba9c: defff604 addi sp,sp,-40 4baa0: 00800174 movhi r2,5 4baa4: dc800815 stw r18,32(sp) 4baa8: dc400715 stw r17,28(sp) 4baac: dc000615 stw r16,24(sp) 4bab0: 10908f04 addi r2,r2,16956 4bab4: dfc00915 stw ra,36(sp) 4bab8: 2021883a mov r16,r4 4babc: 3823883a mov r17,r7 4bac0: 14800017 ldw r18,0(r2) 4bac4: 28001426 beq r5,zero,4bb18 <_wcrtomb_r+0x7c> 4bac8: d9400415 stw r5,16(sp) 4bacc: d9800515 stw r6,20(sp) 4bad0: 0046bb40 call 46bb4 <__locale_charset> 4bad4: d9800517 ldw r6,20(sp) 4bad8: d9400417 ldw r5,16(sp) 4badc: 100f883a mov r7,r2 4bae0: dc400015 stw r17,0(sp) 4bae4: 8009883a mov r4,r16 4bae8: 903ee83a callr r18 4baec: 00ffffc4 movi r3,-1 4baf0: 10c0031e bne r2,r3,4bb00 <_wcrtomb_r+0x64> 4baf4: 88000015 stw zero,0(r17) 4baf8: 00c02284 movi r3,138 4bafc: 80c00015 stw r3,0(r16) 4bb00: dfc00917 ldw ra,36(sp) 4bb04: dc800817 ldw r18,32(sp) 4bb08: dc400717 ldw r17,28(sp) 4bb0c: dc000617 ldw r16,24(sp) 4bb10: dec00a04 addi sp,sp,40 4bb14: f800283a ret 4bb18: 0046bb40 call 46bb4 <__locale_charset> 4bb1c: 100f883a mov r7,r2 4bb20: dc400015 stw r17,0(sp) 4bb24: 000d883a mov r6,zero 4bb28: d9400104 addi r5,sp,4 4bb2c: 8009883a mov r4,r16 4bb30: 903ee83a callr r18 4bb34: 003fed06 br 4baec <__alt_data_end+0xfffd9aec> 0004bb38 : 4bb38: defff604 addi sp,sp,-40 4bb3c: 00800174 movhi r2,5 4bb40: dc800615 stw r18,24(sp) 4bb44: dc400515 stw r17,20(sp) 4bb48: 10908b04 addi r2,r2,16940 4bb4c: dfc00915 stw ra,36(sp) 4bb50: dd000815 stw r20,32(sp) 4bb54: dcc00715 stw r19,28(sp) 4bb58: dc000415 stw r16,16(sp) 4bb5c: 3025883a mov r18,r6 4bb60: 14400017 ldw r17,0(r2) 4bb64: 20001926 beq r4,zero,4bbcc 4bb68: 00800174 movhi r2,5 4bb6c: 10908f04 addi r2,r2,16956 4bb70: 15000017 ldw r20,0(r2) 4bb74: 2021883a mov r16,r4 4bb78: 2827883a mov r19,r5 4bb7c: 0046bb40 call 46bb4 <__locale_charset> 4bb80: 100f883a mov r7,r2 4bb84: dc800015 stw r18,0(sp) 4bb88: 980d883a mov r6,r19 4bb8c: 800b883a mov r5,r16 4bb90: 8809883a mov r4,r17 4bb94: a03ee83a callr r20 4bb98: 00ffffc4 movi r3,-1 4bb9c: 10c0031e bne r2,r3,4bbac 4bba0: 90000015 stw zero,0(r18) 4bba4: 00c02284 movi r3,138 4bba8: 88c00015 stw r3,0(r17) 4bbac: dfc00917 ldw ra,36(sp) 4bbb0: dd000817 ldw r20,32(sp) 4bbb4: dcc00717 ldw r19,28(sp) 4bbb8: dc800617 ldw r18,24(sp) 4bbbc: dc400517 ldw r17,20(sp) 4bbc0: dc000417 ldw r16,16(sp) 4bbc4: dec00a04 addi sp,sp,40 4bbc8: f800283a ret 4bbcc: 00800174 movhi r2,5 4bbd0: 10908f04 addi r2,r2,16956 4bbd4: 14000017 ldw r16,0(r2) 4bbd8: 0046bb40 call 46bb4 <__locale_charset> 4bbdc: 100f883a mov r7,r2 4bbe0: dc800015 stw r18,0(sp) 4bbe4: 000d883a mov r6,zero 4bbe8: d9400104 addi r5,sp,4 4bbec: 8809883a mov r4,r17 4bbf0: 803ee83a callr r16 4bbf4: 003fe806 br 4bb98 <__alt_data_end+0xfffd9b98> 0004bbf8 <__ascii_wctomb>: 4bbf8: 28000526 beq r5,zero,4bc10 <__ascii_wctomb+0x18> 4bbfc: 00803fc4 movi r2,255 4bc00: 11800536 bltu r2,r6,4bc18 <__ascii_wctomb+0x20> 4bc04: 29800005 stb r6,0(r5) 4bc08: 00800044 movi r2,1 4bc0c: f800283a ret 4bc10: 0005883a mov r2,zero 4bc14: f800283a ret 4bc18: 00802284 movi r2,138 4bc1c: 20800015 stw r2,0(r4) 4bc20: 00bfffc4 movi r2,-1 4bc24: f800283a ret 0004bc28 <_wctomb_r>: 4bc28: 00800174 movhi r2,5 4bc2c: defff904 addi sp,sp,-28 4bc30: 10908f04 addi r2,r2,16956 4bc34: dfc00615 stw ra,24(sp) 4bc38: dc400515 stw r17,20(sp) 4bc3c: dc000415 stw r16,16(sp) 4bc40: 3823883a mov r17,r7 4bc44: 14000017 ldw r16,0(r2) 4bc48: d9000115 stw r4,4(sp) 4bc4c: d9400215 stw r5,8(sp) 4bc50: d9800315 stw r6,12(sp) 4bc54: 0046bb40 call 46bb4 <__locale_charset> 4bc58: d9800317 ldw r6,12(sp) 4bc5c: d9400217 ldw r5,8(sp) 4bc60: d9000117 ldw r4,4(sp) 4bc64: 100f883a mov r7,r2 4bc68: dc400015 stw r17,0(sp) 4bc6c: 803ee83a callr r16 4bc70: dfc00617 ldw ra,24(sp) 4bc74: dc400517 ldw r17,20(sp) 4bc78: dc000417 ldw r16,16(sp) 4bc7c: dec00704 addi sp,sp,28 4bc80: f800283a ret 0004bc84 <__udivdi3>: 4bc84: defff404 addi sp,sp,-48 4bc88: dcc00515 stw r19,20(sp) 4bc8c: dc000215 stw r16,8(sp) 4bc90: dfc00b15 stw ra,44(sp) 4bc94: df000a15 stw fp,40(sp) 4bc98: ddc00915 stw r23,36(sp) 4bc9c: dd800815 stw r22,32(sp) 4bca0: dd400715 stw r21,28(sp) 4bca4: dd000615 stw r20,24(sp) 4bca8: dc800415 stw r18,16(sp) 4bcac: dc400315 stw r17,12(sp) 4bcb0: 2027883a mov r19,r4 4bcb4: 2821883a mov r16,r5 4bcb8: 3800461e bne r7,zero,4bdd4 <__udivdi3+0x150> 4bcbc: 3023883a mov r17,r6 4bcc0: 2025883a mov r18,r4 4bcc4: 2980572e bgeu r5,r6,4be24 <__udivdi3+0x1a0> 4bcc8: 00bfffd4 movui r2,65535 4bccc: 282d883a mov r22,r5 4bcd0: 1180b236 bltu r2,r6,4bf9c <__udivdi3+0x318> 4bcd4: 00803fc4 movi r2,255 4bcd8: 1185803a cmpltu r2,r2,r6 4bcdc: 100490fa slli r2,r2,3 4bce0: 3086d83a srl r3,r6,r2 4bce4: 01000174 movhi r4,5 4bce8: 21083584 addi r4,r4,8406 4bcec: 20c7883a add r3,r4,r3 4bcf0: 18c00003 ldbu r3,0(r3) 4bcf4: 1885883a add r2,r3,r2 4bcf8: 00c00804 movi r3,32 4bcfc: 1887c83a sub r3,r3,r2 4bd00: 18000526 beq r3,zero,4bd18 <__udivdi3+0x94> 4bd04: 80e0983a sll r16,r16,r3 4bd08: 9884d83a srl r2,r19,r2 4bd0c: 30e2983a sll r17,r6,r3 4bd10: 98e4983a sll r18,r19,r3 4bd14: 142cb03a or r22,r2,r16 4bd18: 882ad43a srli r21,r17,16 4bd1c: b009883a mov r4,r22 4bd20: 8d3fffcc andi r20,r17,65535 4bd24: a80b883a mov r5,r21 4bd28: 004c9a00 call 4c9a0 <__umodsi3> 4bd2c: b009883a mov r4,r22 4bd30: a80b883a mov r5,r21 4bd34: 1027883a mov r19,r2 4bd38: 004c93c0 call 4c93c <__udivsi3> 4bd3c: 100b883a mov r5,r2 4bd40: a009883a mov r4,r20 4bd44: 102d883a mov r22,r2 4bd48: 004c9f80 call 4c9f8 <__mulsi3> 4bd4c: 9826943a slli r19,r19,16 4bd50: 9006d43a srli r3,r18,16 4bd54: 1cc6b03a or r3,r3,r19 4bd58: 1880052e bgeu r3,r2,4bd70 <__udivdi3+0xec> 4bd5c: 1c47883a add r3,r3,r17 4bd60: b13fffc4 addi r4,r22,-1 4bd64: 1c400136 bltu r3,r17,4bd6c <__udivdi3+0xe8> 4bd68: 18814236 bltu r3,r2,4c274 <__udivdi3+0x5f0> 4bd6c: 202d883a mov r22,r4 4bd70: 18a1c83a sub r16,r3,r2 4bd74: 8009883a mov r4,r16 4bd78: a80b883a mov r5,r21 4bd7c: 004c9a00 call 4c9a0 <__umodsi3> 4bd80: 1027883a mov r19,r2 4bd84: 8009883a mov r4,r16 4bd88: a80b883a mov r5,r21 4bd8c: 9826943a slli r19,r19,16 4bd90: 004c93c0 call 4c93c <__udivsi3> 4bd94: 100b883a mov r5,r2 4bd98: a009883a mov r4,r20 4bd9c: 94bfffcc andi r18,r18,65535 4bda0: 1021883a mov r16,r2 4bda4: 94e4b03a or r18,r18,r19 4bda8: 004c9f80 call 4c9f8 <__mulsi3> 4bdac: 9080052e bgeu r18,r2,4bdc4 <__udivdi3+0x140> 4bdb0: 8ca5883a add r18,r17,r18 4bdb4: 80ffffc4 addi r3,r16,-1 4bdb8: 94410c36 bltu r18,r17,4c1ec <__udivdi3+0x568> 4bdbc: 90810b2e bgeu r18,r2,4c1ec <__udivdi3+0x568> 4bdc0: 843fff84 addi r16,r16,-2 4bdc4: b004943a slli r2,r22,16 4bdc8: 0007883a mov r3,zero 4bdcc: 1404b03a or r2,r2,r16 4bdd0: 00005e06 br 4bf4c <__udivdi3+0x2c8> 4bdd4: 29c05b36 bltu r5,r7,4bf44 <__udivdi3+0x2c0> 4bdd8: 00bfffd4 movui r2,65535 4bddc: 11c0672e bgeu r2,r7,4bf7c <__udivdi3+0x2f8> 4bde0: 00804034 movhi r2,256 4bde4: 10bfffc4 addi r2,r2,-1 4bde8: 11c10a36 bltu r2,r7,4c214 <__udivdi3+0x590> 4bdec: 00800404 movi r2,16 4bdf0: 3886d83a srl r3,r7,r2 4bdf4: 01000174 movhi r4,5 4bdf8: 21083584 addi r4,r4,8406 4bdfc: 20c7883a add r3,r4,r3 4be00: 18c00003 ldbu r3,0(r3) 4be04: 05c00804 movi r23,32 4be08: 1885883a add r2,r3,r2 4be0c: b8afc83a sub r23,r23,r2 4be10: b800671e bne r23,zero,4bfb0 <__udivdi3+0x32c> 4be14: 3c010536 bltu r7,r16,4c22c <__udivdi3+0x5a8> 4be18: 9985403a cmpgeu r2,r19,r6 4be1c: 0007883a mov r3,zero 4be20: 00004a06 br 4bf4c <__udivdi3+0x2c8> 4be24: 3000041e bne r6,zero,4be38 <__udivdi3+0x1b4> 4be28: 000b883a mov r5,zero 4be2c: 01000044 movi r4,1 4be30: 004c93c0 call 4c93c <__udivsi3> 4be34: 1023883a mov r17,r2 4be38: 00bfffd4 movui r2,65535 4be3c: 1440532e bgeu r2,r17,4bf8c <__udivdi3+0x308> 4be40: 00804034 movhi r2,256 4be44: 10bfffc4 addi r2,r2,-1 4be48: 1440f436 bltu r2,r17,4c21c <__udivdi3+0x598> 4be4c: 00800404 movi r2,16 4be50: 8886d83a srl r3,r17,r2 4be54: 01000174 movhi r4,5 4be58: 21083584 addi r4,r4,8406 4be5c: 20c7883a add r3,r4,r3 4be60: 18c00003 ldbu r3,0(r3) 4be64: 1885883a add r2,r3,r2 4be68: 00c00804 movi r3,32 4be6c: 1887c83a sub r3,r3,r2 4be70: 1800a51e bne r3,zero,4c108 <__udivdi3+0x484> 4be74: 882ad43a srli r21,r17,16 4be78: 8461c83a sub r16,r16,r17 4be7c: 8d3fffcc andi r20,r17,65535 4be80: 00c00044 movi r3,1 4be84: a80b883a mov r5,r21 4be88: 8009883a mov r4,r16 4be8c: d8c00115 stw r3,4(sp) 4be90: 004c9a00 call 4c9a0 <__umodsi3> 4be94: a80b883a mov r5,r21 4be98: 8009883a mov r4,r16 4be9c: 1027883a mov r19,r2 4bea0: 004c93c0 call 4c93c <__udivsi3> 4bea4: a00b883a mov r5,r20 4bea8: 1009883a mov r4,r2 4beac: 102d883a mov r22,r2 4beb0: 004c9f80 call 4c9f8 <__mulsi3> 4beb4: 9826943a slli r19,r19,16 4beb8: 900ed43a srli r7,r18,16 4bebc: d8c00117 ldw r3,4(sp) 4bec0: 3cceb03a or r7,r7,r19 4bec4: 3880052e bgeu r7,r2,4bedc <__udivdi3+0x258> 4bec8: 3c4f883a add r7,r7,r17 4becc: b13fffc4 addi r4,r22,-1 4bed0: 3c400136 bltu r7,r17,4bed8 <__udivdi3+0x254> 4bed4: 3880e436 bltu r7,r2,4c268 <__udivdi3+0x5e4> 4bed8: 202d883a mov r22,r4 4bedc: 38a1c83a sub r16,r7,r2 4bee0: 8009883a mov r4,r16 4bee4: a80b883a mov r5,r21 4bee8: d8c00115 stw r3,4(sp) 4beec: 004c9a00 call 4c9a0 <__umodsi3> 4bef0: 1027883a mov r19,r2 4bef4: 8009883a mov r4,r16 4bef8: a80b883a mov r5,r21 4befc: 9826943a slli r19,r19,16 4bf00: 004c93c0 call 4c93c <__udivsi3> 4bf04: a00b883a mov r5,r20 4bf08: 1009883a mov r4,r2 4bf0c: 94bfffcc andi r18,r18,65535 4bf10: 1021883a mov r16,r2 4bf14: 94e4b03a or r18,r18,r19 4bf18: 004c9f80 call 4c9f8 <__mulsi3> 4bf1c: d8c00117 ldw r3,4(sp) 4bf20: 9080052e bgeu r18,r2,4bf38 <__udivdi3+0x2b4> 4bf24: 8ca5883a add r18,r17,r18 4bf28: 813fffc4 addi r4,r16,-1 4bf2c: 9440ad36 bltu r18,r17,4c1e4 <__udivdi3+0x560> 4bf30: 9080ac2e bgeu r18,r2,4c1e4 <__udivdi3+0x560> 4bf34: 843fff84 addi r16,r16,-2 4bf38: b004943a slli r2,r22,16 4bf3c: 1404b03a or r2,r2,r16 4bf40: 00000206 br 4bf4c <__udivdi3+0x2c8> 4bf44: 0007883a mov r3,zero 4bf48: 0005883a mov r2,zero 4bf4c: dfc00b17 ldw ra,44(sp) 4bf50: df000a17 ldw fp,40(sp) 4bf54: ddc00917 ldw r23,36(sp) 4bf58: dd800817 ldw r22,32(sp) 4bf5c: dd400717 ldw r21,28(sp) 4bf60: dd000617 ldw r20,24(sp) 4bf64: dcc00517 ldw r19,20(sp) 4bf68: dc800417 ldw r18,16(sp) 4bf6c: dc400317 ldw r17,12(sp) 4bf70: dc000217 ldw r16,8(sp) 4bf74: dec00c04 addi sp,sp,48 4bf78: f800283a ret 4bf7c: 00803fc4 movi r2,255 4bf80: 11c5803a cmpltu r2,r2,r7 4bf84: 100490fa slli r2,r2,3 4bf88: 003f9906 br 4bdf0 <__alt_data_end+0xfffd9df0> 4bf8c: 00803fc4 movi r2,255 4bf90: 1445803a cmpltu r2,r2,r17 4bf94: 100490fa slli r2,r2,3 4bf98: 003fad06 br 4be50 <__alt_data_end+0xfffd9e50> 4bf9c: 00804034 movhi r2,256 4bfa0: 10bfffc4 addi r2,r2,-1 4bfa4: 11809f36 bltu r2,r6,4c224 <__udivdi3+0x5a0> 4bfa8: 00800404 movi r2,16 4bfac: 003f4c06 br 4bce0 <__alt_data_end+0xfffd9ce0> 4bfb0: 3dce983a sll r7,r7,r23 4bfb4: 30b8d83a srl fp,r6,r2 4bfb8: 80a2d83a srl r17,r16,r2 4bfbc: 35cc983a sll r6,r6,r23 4bfc0: 3f38b03a or fp,r7,fp 4bfc4: e024d43a srli r18,fp,16 4bfc8: 9884d83a srl r2,r19,r2 4bfcc: 85e0983a sll r16,r16,r23 4bfd0: 8809883a mov r4,r17 4bfd4: 900b883a mov r5,r18 4bfd8: d9800015 stw r6,0(sp) 4bfdc: 1420b03a or r16,r2,r16 4bfe0: 004c9a00 call 4c9a0 <__umodsi3> 4bfe4: 900b883a mov r5,r18 4bfe8: 8809883a mov r4,r17 4bfec: 1029883a mov r20,r2 4bff0: e5bfffcc andi r22,fp,65535 4bff4: 004c93c0 call 4c93c <__udivsi3> 4bff8: 100b883a mov r5,r2 4bffc: b009883a mov r4,r22 4c000: 102b883a mov r21,r2 4c004: 004c9f80 call 4c9f8 <__mulsi3> 4c008: a028943a slli r20,r20,16 4c00c: 8006d43a srli r3,r16,16 4c010: 1d06b03a or r3,r3,r20 4c014: 1880042e bgeu r3,r2,4c028 <__udivdi3+0x3a4> 4c018: 1f07883a add r3,r3,fp 4c01c: a93fffc4 addi r4,r21,-1 4c020: 1f00892e bgeu r3,fp,4c248 <__udivdi3+0x5c4> 4c024: 202b883a mov r21,r4 4c028: 18a3c83a sub r17,r3,r2 4c02c: 8809883a mov r4,r17 4c030: 900b883a mov r5,r18 4c034: 004c9a00 call 4c9a0 <__umodsi3> 4c038: 1029883a mov r20,r2 4c03c: 8809883a mov r4,r17 4c040: 900b883a mov r5,r18 4c044: a028943a slli r20,r20,16 4c048: 004c93c0 call 4c93c <__udivsi3> 4c04c: 100b883a mov r5,r2 4c050: b009883a mov r4,r22 4c054: 843fffcc andi r16,r16,65535 4c058: 1023883a mov r17,r2 4c05c: 8520b03a or r16,r16,r20 4c060: 004c9f80 call 4c9f8 <__mulsi3> 4c064: 8080042e bgeu r16,r2,4c078 <__udivdi3+0x3f4> 4c068: 8721883a add r16,r16,fp 4c06c: 88ffffc4 addi r3,r17,-1 4c070: 8700712e bgeu r16,fp,4c238 <__udivdi3+0x5b4> 4c074: 1823883a mov r17,r3 4c078: a80e943a slli r7,r21,16 4c07c: d8c00017 ldw r3,0(sp) 4c080: 80a1c83a sub r16,r16,r2 4c084: 3c64b03a or r18,r7,r17 4c088: 1d3fffcc andi r20,r3,65535 4c08c: 9022d43a srli r17,r18,16 4c090: 95bfffcc andi r22,r18,65535 4c094: a00b883a mov r5,r20 4c098: b009883a mov r4,r22 4c09c: 182ad43a srli r21,r3,16 4c0a0: 004c9f80 call 4c9f8 <__mulsi3> 4c0a4: a00b883a mov r5,r20 4c0a8: 8809883a mov r4,r17 4c0ac: 1039883a mov fp,r2 4c0b0: 004c9f80 call 4c9f8 <__mulsi3> 4c0b4: 8809883a mov r4,r17 4c0b8: a80b883a mov r5,r21 4c0bc: 1029883a mov r20,r2 4c0c0: 004c9f80 call 4c9f8 <__mulsi3> 4c0c4: a80b883a mov r5,r21 4c0c8: b009883a mov r4,r22 4c0cc: 1023883a mov r17,r2 4c0d0: 004c9f80 call 4c9f8 <__mulsi3> 4c0d4: e006d43a srli r3,fp,16 4c0d8: 1505883a add r2,r2,r20 4c0dc: 1887883a add r3,r3,r2 4c0e0: 1d00022e bgeu r3,r20,4c0ec <__udivdi3+0x468> 4c0e4: 00800074 movhi r2,1 4c0e8: 88a3883a add r17,r17,r2 4c0ec: 1804d43a srli r2,r3,16 4c0f0: 1463883a add r17,r2,r17 4c0f4: 84404436 bltu r16,r17,4c208 <__udivdi3+0x584> 4c0f8: 84403e26 beq r16,r17,4c1f4 <__udivdi3+0x570> 4c0fc: 9005883a mov r2,r18 4c100: 0007883a mov r3,zero 4c104: 003f9106 br 4bf4c <__alt_data_end+0xfffd9f4c> 4c108: 88e2983a sll r17,r17,r3 4c10c: 80aed83a srl r23,r16,r2 4c110: 80e0983a sll r16,r16,r3 4c114: 882ad43a srli r21,r17,16 4c118: 9884d83a srl r2,r19,r2 4c11c: b809883a mov r4,r23 4c120: a80b883a mov r5,r21 4c124: 98e4983a sll r18,r19,r3 4c128: 142cb03a or r22,r2,r16 4c12c: 004c9a00 call 4c9a0 <__umodsi3> 4c130: b809883a mov r4,r23 4c134: a80b883a mov r5,r21 4c138: 1027883a mov r19,r2 4c13c: 8d3fffcc andi r20,r17,65535 4c140: 004c93c0 call 4c93c <__udivsi3> 4c144: a009883a mov r4,r20 4c148: 100b883a mov r5,r2 4c14c: 102f883a mov r23,r2 4c150: 004c9f80 call 4c9f8 <__mulsi3> 4c154: 9826943a slli r19,r19,16 4c158: b008d43a srli r4,r22,16 4c15c: 24c8b03a or r4,r4,r19 4c160: 2080062e bgeu r4,r2,4c17c <__udivdi3+0x4f8> 4c164: 2449883a add r4,r4,r17 4c168: b8ffffc4 addi r3,r23,-1 4c16c: 24403c36 bltu r4,r17,4c260 <__udivdi3+0x5dc> 4c170: 20803b2e bgeu r4,r2,4c260 <__udivdi3+0x5dc> 4c174: bdffff84 addi r23,r23,-2 4c178: 2449883a add r4,r4,r17 4c17c: 20a1c83a sub r16,r4,r2 4c180: a80b883a mov r5,r21 4c184: 8009883a mov r4,r16 4c188: 004c9a00 call 4c9a0 <__umodsi3> 4c18c: a80b883a mov r5,r21 4c190: 8009883a mov r4,r16 4c194: 1027883a mov r19,r2 4c198: 004c93c0 call 4c93c <__udivsi3> 4c19c: a009883a mov r4,r20 4c1a0: 100b883a mov r5,r2 4c1a4: 9826943a slli r19,r19,16 4c1a8: 1039883a mov fp,r2 4c1ac: 004c9f80 call 4c9f8 <__mulsi3> 4c1b0: b13fffcc andi r4,r22,65535 4c1b4: 24c8b03a or r4,r4,r19 4c1b8: 2080062e bgeu r4,r2,4c1d4 <__udivdi3+0x550> 4c1bc: 2449883a add r4,r4,r17 4c1c0: e0ffffc4 addi r3,fp,-1 4c1c4: 24402436 bltu r4,r17,4c258 <__udivdi3+0x5d4> 4c1c8: 2080232e bgeu r4,r2,4c258 <__udivdi3+0x5d4> 4c1cc: e73fff84 addi fp,fp,-2 4c1d0: 2449883a add r4,r4,r17 4c1d4: b82e943a slli r23,r23,16 4c1d8: 20a1c83a sub r16,r4,r2 4c1dc: bf06b03a or r3,r23,fp 4c1e0: 003f2806 br 4be84 <__alt_data_end+0xfffd9e84> 4c1e4: 2021883a mov r16,r4 4c1e8: 003f5306 br 4bf38 <__alt_data_end+0xfffd9f38> 4c1ec: 1821883a mov r16,r3 4c1f0: 003ef406 br 4bdc4 <__alt_data_end+0xfffd9dc4> 4c1f4: 1806943a slli r3,r3,16 4c1f8: 9de6983a sll r19,r19,r23 4c1fc: e73fffcc andi fp,fp,65535 4c200: 1f07883a add r3,r3,fp 4c204: 98ffbd2e bgeu r19,r3,4c0fc <__alt_data_end+0xfffda0fc> 4c208: 90bfffc4 addi r2,r18,-1 4c20c: 0007883a mov r3,zero 4c210: 003f4e06 br 4bf4c <__alt_data_end+0xfffd9f4c> 4c214: 00800604 movi r2,24 4c218: 003ef506 br 4bdf0 <__alt_data_end+0xfffd9df0> 4c21c: 00800604 movi r2,24 4c220: 003f0b06 br 4be50 <__alt_data_end+0xfffd9e50> 4c224: 00800604 movi r2,24 4c228: 003ead06 br 4bce0 <__alt_data_end+0xfffd9ce0> 4c22c: 0007883a mov r3,zero 4c230: 00800044 movi r2,1 4c234: 003f4506 br 4bf4c <__alt_data_end+0xfffd9f4c> 4c238: 80bf8e2e bgeu r16,r2,4c074 <__alt_data_end+0xfffda074> 4c23c: 8c7fff84 addi r17,r17,-2 4c240: 8721883a add r16,r16,fp 4c244: 003f8c06 br 4c078 <__alt_data_end+0xfffda078> 4c248: 18bf762e bgeu r3,r2,4c024 <__alt_data_end+0xfffda024> 4c24c: ad7fff84 addi r21,r21,-2 4c250: 1f07883a add r3,r3,fp 4c254: 003f7406 br 4c028 <__alt_data_end+0xfffda028> 4c258: 1839883a mov fp,r3 4c25c: 003fdd06 br 4c1d4 <__alt_data_end+0xfffda1d4> 4c260: 182f883a mov r23,r3 4c264: 003fc506 br 4c17c <__alt_data_end+0xfffda17c> 4c268: b5bfff84 addi r22,r22,-2 4c26c: 3c4f883a add r7,r7,r17 4c270: 003f1a06 br 4bedc <__alt_data_end+0xfffd9edc> 4c274: b5bfff84 addi r22,r22,-2 4c278: 1c47883a add r3,r3,r17 4c27c: 003ebc06 br 4bd70 <__alt_data_end+0xfffd9d70> 0004c280 <__umoddi3>: 4c280: defff304 addi sp,sp,-52 4c284: df000b15 stw fp,44(sp) 4c288: dc400415 stw r17,16(sp) 4c28c: dc000315 stw r16,12(sp) 4c290: dfc00c15 stw ra,48(sp) 4c294: ddc00a15 stw r23,40(sp) 4c298: dd800915 stw r22,36(sp) 4c29c: dd400815 stw r21,32(sp) 4c2a0: dd000715 stw r20,28(sp) 4c2a4: dcc00615 stw r19,24(sp) 4c2a8: dc800515 stw r18,20(sp) 4c2ac: 2021883a mov r16,r4 4c2b0: 2823883a mov r17,r5 4c2b4: 2839883a mov fp,r5 4c2b8: 3800401e bne r7,zero,4c3bc <__umoddi3+0x13c> 4c2bc: 3027883a mov r19,r6 4c2c0: 2029883a mov r20,r4 4c2c4: 2980552e bgeu r5,r6,4c41c <__umoddi3+0x19c> 4c2c8: 00bfffd4 movui r2,65535 4c2cc: 1180a236 bltu r2,r6,4c558 <__umoddi3+0x2d8> 4c2d0: 01003fc4 movi r4,255 4c2d4: 2189803a cmpltu r4,r4,r6 4c2d8: 200890fa slli r4,r4,3 4c2dc: 3104d83a srl r2,r6,r4 4c2e0: 00c00174 movhi r3,5 4c2e4: 18c83584 addi r3,r3,8406 4c2e8: 1885883a add r2,r3,r2 4c2ec: 10c00003 ldbu r3,0(r2) 4c2f0: 00800804 movi r2,32 4c2f4: 1909883a add r4,r3,r4 4c2f8: 1125c83a sub r18,r2,r4 4c2fc: 90000526 beq r18,zero,4c314 <__umoddi3+0x94> 4c300: 8ca2983a sll r17,r17,r18 4c304: 8108d83a srl r4,r16,r4 4c308: 34a6983a sll r19,r6,r18 4c30c: 84a8983a sll r20,r16,r18 4c310: 2478b03a or fp,r4,r17 4c314: 982cd43a srli r22,r19,16 4c318: e009883a mov r4,fp 4c31c: 9dffffcc andi r23,r19,65535 4c320: b00b883a mov r5,r22 4c324: 004c9a00 call 4c9a0 <__umodsi3> 4c328: b00b883a mov r5,r22 4c32c: e009883a mov r4,fp 4c330: 102b883a mov r21,r2 4c334: 004c93c0 call 4c93c <__udivsi3> 4c338: 100b883a mov r5,r2 4c33c: b809883a mov r4,r23 4c340: 004c9f80 call 4c9f8 <__mulsi3> 4c344: a82a943a slli r21,r21,16 4c348: a006d43a srli r3,r20,16 4c34c: 1d46b03a or r3,r3,r21 4c350: 1880032e bgeu r3,r2,4c360 <__umoddi3+0xe0> 4c354: 1cc7883a add r3,r3,r19 4c358: 1cc00136 bltu r3,r19,4c360 <__umoddi3+0xe0> 4c35c: 18813136 bltu r3,r2,4c824 <__umoddi3+0x5a4> 4c360: 18a1c83a sub r16,r3,r2 4c364: b00b883a mov r5,r22 4c368: 8009883a mov r4,r16 4c36c: 004c9a00 call 4c9a0 <__umodsi3> 4c370: b00b883a mov r5,r22 4c374: 8009883a mov r4,r16 4c378: 1023883a mov r17,r2 4c37c: 004c93c0 call 4c93c <__udivsi3> 4c380: 100b883a mov r5,r2 4c384: b809883a mov r4,r23 4c388: 8822943a slli r17,r17,16 4c38c: 004c9f80 call 4c9f8 <__mulsi3> 4c390: a0ffffcc andi r3,r20,65535 4c394: 1c46b03a or r3,r3,r17 4c398: 1880042e bgeu r3,r2,4c3ac <__umoddi3+0x12c> 4c39c: 1cc7883a add r3,r3,r19 4c3a0: 1cc00236 bltu r3,r19,4c3ac <__umoddi3+0x12c> 4c3a4: 1880012e bgeu r3,r2,4c3ac <__umoddi3+0x12c> 4c3a8: 1cc7883a add r3,r3,r19 4c3ac: 1885c83a sub r2,r3,r2 4c3b0: 1484d83a srl r2,r2,r18 4c3b4: 0007883a mov r3,zero 4c3b8: 00005306 br 4c508 <__umoddi3+0x288> 4c3bc: 29c05036 bltu r5,r7,4c500 <__umoddi3+0x280> 4c3c0: 00bfffd4 movui r2,65535 4c3c4: 11c05c2e bgeu r2,r7,4c538 <__umoddi3+0x2b8> 4c3c8: 00804034 movhi r2,256 4c3cc: 10bfffc4 addi r2,r2,-1 4c3d0: 11c10636 bltu r2,r7,4c7ec <__umoddi3+0x56c> 4c3d4: 01000404 movi r4,16 4c3d8: 3904d83a srl r2,r7,r4 4c3dc: 00c00174 movhi r3,5 4c3e0: 18c83584 addi r3,r3,8406 4c3e4: 1885883a add r2,r3,r2 4c3e8: 14c00003 ldbu r19,0(r2) 4c3ec: 00c00804 movi r3,32 4c3f0: 9927883a add r19,r19,r4 4c3f4: 1ce9c83a sub r20,r3,r19 4c3f8: a0005c1e bne r20,zero,4c56c <__umoddi3+0x2ec> 4c3fc: 3c400136 bltu r7,r17,4c404 <__umoddi3+0x184> 4c400: 81810a36 bltu r16,r6,4c82c <__umoddi3+0x5ac> 4c404: 8185c83a sub r2,r16,r6 4c408: 89e3c83a sub r17,r17,r7 4c40c: 8089803a cmpltu r4,r16,r2 4c410: 8939c83a sub fp,r17,r4 4c414: e007883a mov r3,fp 4c418: 00003b06 br 4c508 <__umoddi3+0x288> 4c41c: 3000041e bne r6,zero,4c430 <__umoddi3+0x1b0> 4c420: 000b883a mov r5,zero 4c424: 01000044 movi r4,1 4c428: 004c93c0 call 4c93c <__udivsi3> 4c42c: 1027883a mov r19,r2 4c430: 00bfffd4 movui r2,65535 4c434: 14c0442e bgeu r2,r19,4c548 <__umoddi3+0x2c8> 4c438: 00804034 movhi r2,256 4c43c: 10bfffc4 addi r2,r2,-1 4c440: 14c0ec36 bltu r2,r19,4c7f4 <__umoddi3+0x574> 4c444: 00800404 movi r2,16 4c448: 9886d83a srl r3,r19,r2 4c44c: 01000174 movhi r4,5 4c450: 21083584 addi r4,r4,8406 4c454: 20c7883a add r3,r4,r3 4c458: 18c00003 ldbu r3,0(r3) 4c45c: 1887883a add r3,r3,r2 4c460: 00800804 movi r2,32 4c464: 10e5c83a sub r18,r2,r3 4c468: 9000ab1e bne r18,zero,4c718 <__umoddi3+0x498> 4c46c: 982cd43a srli r22,r19,16 4c470: 8ce3c83a sub r17,r17,r19 4c474: 9dffffcc andi r23,r19,65535 4c478: b00b883a mov r5,r22 4c47c: 8809883a mov r4,r17 4c480: 004c9a00 call 4c9a0 <__umodsi3> 4c484: b00b883a mov r5,r22 4c488: 8809883a mov r4,r17 4c48c: 102b883a mov r21,r2 4c490: 004c93c0 call 4c93c <__udivsi3> 4c494: b80b883a mov r5,r23 4c498: 1009883a mov r4,r2 4c49c: 004c9f80 call 4c9f8 <__mulsi3> 4c4a0: a82a943a slli r21,r21,16 4c4a4: a006d43a srli r3,r20,16 4c4a8: 1d46b03a or r3,r3,r21 4c4ac: 1880042e bgeu r3,r2,4c4c0 <__umoddi3+0x240> 4c4b0: 1cc7883a add r3,r3,r19 4c4b4: 1cc00236 bltu r3,r19,4c4c0 <__umoddi3+0x240> 4c4b8: 1880012e bgeu r3,r2,4c4c0 <__umoddi3+0x240> 4c4bc: 1cc7883a add r3,r3,r19 4c4c0: 18a1c83a sub r16,r3,r2 4c4c4: b00b883a mov r5,r22 4c4c8: 8009883a mov r4,r16 4c4cc: 004c9a00 call 4c9a0 <__umodsi3> 4c4d0: 1023883a mov r17,r2 4c4d4: b00b883a mov r5,r22 4c4d8: 8009883a mov r4,r16 4c4dc: 004c93c0 call 4c93c <__udivsi3> 4c4e0: 8822943a slli r17,r17,16 4c4e4: b80b883a mov r5,r23 4c4e8: 1009883a mov r4,r2 4c4ec: 004c9f80 call 4c9f8 <__mulsi3> 4c4f0: a53fffcc andi r20,r20,65535 4c4f4: a446b03a or r3,r20,r17 4c4f8: 18bfac2e bgeu r3,r2,4c3ac <__alt_data_end+0xfffda3ac> 4c4fc: 003fa706 br 4c39c <__alt_data_end+0xfffda39c> 4c500: 2005883a mov r2,r4 4c504: 2807883a mov r3,r5 4c508: dfc00c17 ldw ra,48(sp) 4c50c: df000b17 ldw fp,44(sp) 4c510: ddc00a17 ldw r23,40(sp) 4c514: dd800917 ldw r22,36(sp) 4c518: dd400817 ldw r21,32(sp) 4c51c: dd000717 ldw r20,28(sp) 4c520: dcc00617 ldw r19,24(sp) 4c524: dc800517 ldw r18,20(sp) 4c528: dc400417 ldw r17,16(sp) 4c52c: dc000317 ldw r16,12(sp) 4c530: dec00d04 addi sp,sp,52 4c534: f800283a ret 4c538: 04c03fc4 movi r19,255 4c53c: 99c9803a cmpltu r4,r19,r7 4c540: 200890fa slli r4,r4,3 4c544: 003fa406 br 4c3d8 <__alt_data_end+0xfffda3d8> 4c548: 00803fc4 movi r2,255 4c54c: 14c5803a cmpltu r2,r2,r19 4c550: 100490fa slli r2,r2,3 4c554: 003fbc06 br 4c448 <__alt_data_end+0xfffda448> 4c558: 00804034 movhi r2,256 4c55c: 10bfffc4 addi r2,r2,-1 4c560: 1180a636 bltu r2,r6,4c7fc <__umoddi3+0x57c> 4c564: 01000404 movi r4,16 4c568: 003f5c06 br 4c2dc <__alt_data_end+0xfffda2dc> 4c56c: 3d0e983a sll r7,r7,r20 4c570: 34ead83a srl r21,r6,r19 4c574: 8cc6d83a srl r3,r17,r19 4c578: 8d10983a sll r8,r17,r20 4c57c: 3d6ab03a or r21,r7,r21 4c580: a82cd43a srli r22,r21,16 4c584: 84e2d83a srl r17,r16,r19 4c588: 1809883a mov r4,r3 4c58c: b00b883a mov r5,r22 4c590: 8a22b03a or r17,r17,r8 4c594: 3524983a sll r18,r6,r20 4c598: dc400015 stw r17,0(sp) 4c59c: d8c00115 stw r3,4(sp) 4c5a0: 004c9a00 call 4c9a0 <__umodsi3> 4c5a4: d8c00117 ldw r3,4(sp) 4c5a8: b00b883a mov r5,r22 4c5ac: 1039883a mov fp,r2 4c5b0: 1809883a mov r4,r3 4c5b4: 004c93c0 call 4c93c <__udivsi3> 4c5b8: adffffcc andi r23,r21,65535 4c5bc: 100b883a mov r5,r2 4c5c0: b809883a mov r4,r23 4c5c4: 1023883a mov r17,r2 4c5c8: 004c9f80 call 4c9f8 <__mulsi3> 4c5cc: d9400017 ldw r5,0(sp) 4c5d0: e008943a slli r4,fp,16 4c5d4: 8520983a sll r16,r16,r20 4c5d8: 2806d43a srli r3,r5,16 4c5dc: 1906b03a or r3,r3,r4 4c5e0: 1880042e bgeu r3,r2,4c5f4 <__umoddi3+0x374> 4c5e4: 1d47883a add r3,r3,r21 4c5e8: 893fffc4 addi r4,r17,-1 4c5ec: 1d40892e bgeu r3,r21,4c814 <__umoddi3+0x594> 4c5f0: 2023883a mov r17,r4 4c5f4: 18b9c83a sub fp,r3,r2 4c5f8: b00b883a mov r5,r22 4c5fc: e009883a mov r4,fp 4c600: 004c9a00 call 4c9a0 <__umodsi3> 4c604: b00b883a mov r5,r22 4c608: e009883a mov r4,fp 4c60c: d8800215 stw r2,8(sp) 4c610: 004c93c0 call 4c93c <__udivsi3> 4c614: 100b883a mov r5,r2 4c618: b809883a mov r4,r23 4c61c: 102d883a mov r22,r2 4c620: 004c9f80 call 4c9f8 <__mulsi3> 4c624: d9800217 ldw r6,8(sp) 4c628: d8c00017 ldw r3,0(sp) 4c62c: 300c943a slli r6,r6,16 4c630: 1a3fffcc andi r8,r3,65535 4c634: 4190b03a or r8,r8,r6 4c638: 4080042e bgeu r8,r2,4c64c <__umoddi3+0x3cc> 4c63c: 4551883a add r8,r8,r21 4c640: b0ffffc4 addi r3,r22,-1 4c644: 45406f2e bgeu r8,r21,4c804 <__umoddi3+0x584> 4c648: 182d883a mov r22,r3 4c64c: 880e943a slli r7,r17,16 4c650: 9006d43a srli r3,r18,16 4c654: 91bfffcc andi r6,r18,65535 4c658: 3dacb03a or r22,r7,r22 4c65c: b02ed43a srli r23,r22,16 4c660: b5bfffcc andi r22,r22,65535 4c664: 300b883a mov r5,r6 4c668: b009883a mov r4,r22 4c66c: 40a3c83a sub r17,r8,r2 4c670: d8c00115 stw r3,4(sp) 4c674: d9800215 stw r6,8(sp) 4c678: 004c9f80 call 4c9f8 <__mulsi3> 4c67c: d9800217 ldw r6,8(sp) 4c680: b809883a mov r4,r23 4c684: 1039883a mov fp,r2 4c688: 300b883a mov r5,r6 4c68c: 004c9f80 call 4c9f8 <__mulsi3> 4c690: d8c00117 ldw r3,4(sp) 4c694: b809883a mov r4,r23 4c698: d8800215 stw r2,8(sp) 4c69c: 180b883a mov r5,r3 4c6a0: 004c9f80 call 4c9f8 <__mulsi3> 4c6a4: d8c00117 ldw r3,4(sp) 4c6a8: b009883a mov r4,r22 4c6ac: 102f883a mov r23,r2 4c6b0: 180b883a mov r5,r3 4c6b4: 004c9f80 call 4c9f8 <__mulsi3> 4c6b8: d9800217 ldw r6,8(sp) 4c6bc: e006d43a srli r3,fp,16 4c6c0: 1185883a add r2,r2,r6 4c6c4: 1885883a add r2,r3,r2 4c6c8: 1180022e bgeu r2,r6,4c6d4 <__umoddi3+0x454> 4c6cc: 00c00074 movhi r3,1 4c6d0: b8ef883a add r23,r23,r3 4c6d4: 1006d43a srli r3,r2,16 4c6d8: 1004943a slli r2,r2,16 4c6dc: e73fffcc andi fp,fp,65535 4c6e0: 1dc7883a add r3,r3,r23 4c6e4: 1739883a add fp,r2,fp 4c6e8: 88c03a36 bltu r17,r3,4c7d4 <__umoddi3+0x554> 4c6ec: 88c05126 beq r17,r3,4c834 <__umoddi3+0x5b4> 4c6f0: 88c9c83a sub r4,r17,r3 4c6f4: e00f883a mov r7,fp 4c6f8: 81cfc83a sub r7,r16,r7 4c6fc: 81c7803a cmpltu r3,r16,r7 4c700: 20c7c83a sub r3,r4,r3 4c704: 1cc4983a sll r2,r3,r19 4c708: 3d0ed83a srl r7,r7,r20 4c70c: 1d06d83a srl r3,r3,r20 4c710: 11c4b03a or r2,r2,r7 4c714: 003f7c06 br 4c508 <__alt_data_end+0xfffda508> 4c718: 9ca6983a sll r19,r19,r18 4c71c: 88f8d83a srl fp,r17,r3 4c720: 80c4d83a srl r2,r16,r3 4c724: 982cd43a srli r22,r19,16 4c728: 8ca2983a sll r17,r17,r18 4c72c: e009883a mov r4,fp 4c730: b00b883a mov r5,r22 4c734: 146ab03a or r21,r2,r17 4c738: 004c9a00 call 4c9a0 <__umodsi3> 4c73c: b00b883a mov r5,r22 4c740: e009883a mov r4,fp 4c744: 1029883a mov r20,r2 4c748: 9dffffcc andi r23,r19,65535 4c74c: 004c93c0 call 4c93c <__udivsi3> 4c750: b809883a mov r4,r23 4c754: 100b883a mov r5,r2 4c758: 004c9f80 call 4c9f8 <__mulsi3> 4c75c: a008943a slli r4,r20,16 4c760: a806d43a srli r3,r21,16 4c764: 84a8983a sll r20,r16,r18 4c768: 1906b03a or r3,r3,r4 4c76c: 1880042e bgeu r3,r2,4c780 <__umoddi3+0x500> 4c770: 1cc7883a add r3,r3,r19 4c774: 1cc00236 bltu r3,r19,4c780 <__umoddi3+0x500> 4c778: 1880012e bgeu r3,r2,4c780 <__umoddi3+0x500> 4c77c: 1cc7883a add r3,r3,r19 4c780: 18a3c83a sub r17,r3,r2 4c784: b00b883a mov r5,r22 4c788: 8809883a mov r4,r17 4c78c: 004c9a00 call 4c9a0 <__umodsi3> 4c790: b00b883a mov r5,r22 4c794: 8809883a mov r4,r17 4c798: 1021883a mov r16,r2 4c79c: 004c93c0 call 4c93c <__udivsi3> 4c7a0: 100b883a mov r5,r2 4c7a4: b809883a mov r4,r23 4c7a8: 8020943a slli r16,r16,16 4c7ac: 004c9f80 call 4c9f8 <__mulsi3> 4c7b0: a8ffffcc andi r3,r21,65535 4c7b4: 1c06b03a or r3,r3,r16 4c7b8: 1880042e bgeu r3,r2,4c7cc <__umoddi3+0x54c> 4c7bc: 1cc7883a add r3,r3,r19 4c7c0: 1cc00236 bltu r3,r19,4c7cc <__umoddi3+0x54c> 4c7c4: 1880012e bgeu r3,r2,4c7cc <__umoddi3+0x54c> 4c7c8: 1cc7883a add r3,r3,r19 4c7cc: 18a3c83a sub r17,r3,r2 4c7d0: 003f2906 br 4c478 <__alt_data_end+0xfffda478> 4c7d4: e48fc83a sub r7,fp,r18 4c7d8: 1d49c83a sub r4,r3,r21 4c7dc: e1f9803a cmpltu fp,fp,r7 4c7e0: 2739c83a sub fp,r4,fp 4c7e4: 8f09c83a sub r4,r17,fp 4c7e8: 003fc306 br 4c6f8 <__alt_data_end+0xfffda6f8> 4c7ec: 01000604 movi r4,24 4c7f0: 003ef906 br 4c3d8 <__alt_data_end+0xfffda3d8> 4c7f4: 00800604 movi r2,24 4c7f8: 003f1306 br 4c448 <__alt_data_end+0xfffda448> 4c7fc: 01000604 movi r4,24 4c800: 003eb606 br 4c2dc <__alt_data_end+0xfffda2dc> 4c804: 40bf902e bgeu r8,r2,4c648 <__alt_data_end+0xfffda648> 4c808: b5bfff84 addi r22,r22,-2 4c80c: 4551883a add r8,r8,r21 4c810: 003f8e06 br 4c64c <__alt_data_end+0xfffda64c> 4c814: 18bf762e bgeu r3,r2,4c5f0 <__alt_data_end+0xfffda5f0> 4c818: 8c7fff84 addi r17,r17,-2 4c81c: 1d47883a add r3,r3,r21 4c820: 003f7406 br 4c5f4 <__alt_data_end+0xfffda5f4> 4c824: 1cc7883a add r3,r3,r19 4c828: 003ecd06 br 4c360 <__alt_data_end+0xfffda360> 4c82c: 8005883a mov r2,r16 4c830: 003ef806 br 4c414 <__alt_data_end+0xfffda414> 4c834: 873fe736 bltu r16,fp,4c7d4 <__alt_data_end+0xfffda7d4> 4c838: e00f883a mov r7,fp 4c83c: 0009883a mov r4,zero 4c840: 003fad06 br 4c6f8 <__alt_data_end+0xfffda6f8> 0004c844 <__divsi3>: 4c844: 20001b16 blt r4,zero,4c8b4 <__divsi3+0x70> 4c848: 000f883a mov r7,zero 4c84c: 28001616 blt r5,zero,4c8a8 <__divsi3+0x64> 4c850: 200d883a mov r6,r4 4c854: 29001a2e bgeu r5,r4,4c8c0 <__divsi3+0x7c> 4c858: 00800804 movi r2,32 4c85c: 00c00044 movi r3,1 4c860: 00000106 br 4c868 <__divsi3+0x24> 4c864: 10000d26 beq r2,zero,4c89c <__divsi3+0x58> 4c868: 294b883a add r5,r5,r5 4c86c: 10bfffc4 addi r2,r2,-1 4c870: 18c7883a add r3,r3,r3 4c874: 293ffb36 bltu r5,r4,4c864 <__alt_data_end+0xfffda864> 4c878: 0005883a mov r2,zero 4c87c: 18000726 beq r3,zero,4c89c <__divsi3+0x58> 4c880: 0005883a mov r2,zero 4c884: 31400236 bltu r6,r5,4c890 <__divsi3+0x4c> 4c888: 314dc83a sub r6,r6,r5 4c88c: 10c4b03a or r2,r2,r3 4c890: 1806d07a srli r3,r3,1 4c894: 280ad07a srli r5,r5,1 4c898: 183ffa1e bne r3,zero,4c884 <__alt_data_end+0xfffda884> 4c89c: 38000126 beq r7,zero,4c8a4 <__divsi3+0x60> 4c8a0: 0085c83a sub r2,zero,r2 4c8a4: f800283a ret 4c8a8: 014bc83a sub r5,zero,r5 4c8ac: 39c0005c xori r7,r7,1 4c8b0: 003fe706 br 4c850 <__alt_data_end+0xfffda850> 4c8b4: 0109c83a sub r4,zero,r4 4c8b8: 01c00044 movi r7,1 4c8bc: 003fe306 br 4c84c <__alt_data_end+0xfffda84c> 4c8c0: 00c00044 movi r3,1 4c8c4: 003fee06 br 4c880 <__alt_data_end+0xfffda880> 0004c8c8 <__modsi3>: 4c8c8: 20001716 blt r4,zero,4c928 <__modsi3+0x60> 4c8cc: 000f883a mov r7,zero 4c8d0: 2005883a mov r2,r4 4c8d4: 28001216 blt r5,zero,4c920 <__modsi3+0x58> 4c8d8: 2900162e bgeu r5,r4,4c934 <__modsi3+0x6c> 4c8dc: 01800804 movi r6,32 4c8e0: 00c00044 movi r3,1 4c8e4: 00000106 br 4c8ec <__modsi3+0x24> 4c8e8: 30000a26 beq r6,zero,4c914 <__modsi3+0x4c> 4c8ec: 294b883a add r5,r5,r5 4c8f0: 31bfffc4 addi r6,r6,-1 4c8f4: 18c7883a add r3,r3,r3 4c8f8: 293ffb36 bltu r5,r4,4c8e8 <__alt_data_end+0xfffda8e8> 4c8fc: 18000526 beq r3,zero,4c914 <__modsi3+0x4c> 4c900: 1806d07a srli r3,r3,1 4c904: 11400136 bltu r2,r5,4c90c <__modsi3+0x44> 4c908: 1145c83a sub r2,r2,r5 4c90c: 280ad07a srli r5,r5,1 4c910: 183ffb1e bne r3,zero,4c900 <__alt_data_end+0xfffda900> 4c914: 38000126 beq r7,zero,4c91c <__modsi3+0x54> 4c918: 0085c83a sub r2,zero,r2 4c91c: f800283a ret 4c920: 014bc83a sub r5,zero,r5 4c924: 003fec06 br 4c8d8 <__alt_data_end+0xfffda8d8> 4c928: 0109c83a sub r4,zero,r4 4c92c: 01c00044 movi r7,1 4c930: 003fe706 br 4c8d0 <__alt_data_end+0xfffda8d0> 4c934: 00c00044 movi r3,1 4c938: 003ff106 br 4c900 <__alt_data_end+0xfffda900> 0004c93c <__udivsi3>: 4c93c: 200d883a mov r6,r4 4c940: 2900152e bgeu r5,r4,4c998 <__udivsi3+0x5c> 4c944: 28001416 blt r5,zero,4c998 <__udivsi3+0x5c> 4c948: 00800804 movi r2,32 4c94c: 00c00044 movi r3,1 4c950: 00000206 br 4c95c <__udivsi3+0x20> 4c954: 10000e26 beq r2,zero,4c990 <__udivsi3+0x54> 4c958: 28000516 blt r5,zero,4c970 <__udivsi3+0x34> 4c95c: 294b883a add r5,r5,r5 4c960: 10bfffc4 addi r2,r2,-1 4c964: 18c7883a add r3,r3,r3 4c968: 293ffa36 bltu r5,r4,4c954 <__alt_data_end+0xfffda954> 4c96c: 18000826 beq r3,zero,4c990 <__udivsi3+0x54> 4c970: 0005883a mov r2,zero 4c974: 31400236 bltu r6,r5,4c980 <__udivsi3+0x44> 4c978: 314dc83a sub r6,r6,r5 4c97c: 10c4b03a or r2,r2,r3 4c980: 1806d07a srli r3,r3,1 4c984: 280ad07a srli r5,r5,1 4c988: 183ffa1e bne r3,zero,4c974 <__alt_data_end+0xfffda974> 4c98c: f800283a ret 4c990: 0005883a mov r2,zero 4c994: f800283a ret 4c998: 00c00044 movi r3,1 4c99c: 003ff406 br 4c970 <__alt_data_end+0xfffda970> 0004c9a0 <__umodsi3>: 4c9a0: 2005883a mov r2,r4 4c9a4: 2900122e bgeu r5,r4,4c9f0 <__umodsi3+0x50> 4c9a8: 28001116 blt r5,zero,4c9f0 <__umodsi3+0x50> 4c9ac: 01800804 movi r6,32 4c9b0: 00c00044 movi r3,1 4c9b4: 00000206 br 4c9c0 <__umodsi3+0x20> 4c9b8: 30000c26 beq r6,zero,4c9ec <__umodsi3+0x4c> 4c9bc: 28000516 blt r5,zero,4c9d4 <__umodsi3+0x34> 4c9c0: 294b883a add r5,r5,r5 4c9c4: 31bfffc4 addi r6,r6,-1 4c9c8: 18c7883a add r3,r3,r3 4c9cc: 293ffa36 bltu r5,r4,4c9b8 <__alt_data_end+0xfffda9b8> 4c9d0: 18000626 beq r3,zero,4c9ec <__umodsi3+0x4c> 4c9d4: 1806d07a srli r3,r3,1 4c9d8: 11400136 bltu r2,r5,4c9e0 <__umodsi3+0x40> 4c9dc: 1145c83a sub r2,r2,r5 4c9e0: 280ad07a srli r5,r5,1 4c9e4: 183ffb1e bne r3,zero,4c9d4 <__alt_data_end+0xfffda9d4> 4c9e8: f800283a ret 4c9ec: f800283a ret 4c9f0: 00c00044 movi r3,1 4c9f4: 003ff706 br 4c9d4 <__alt_data_end+0xfffda9d4> 0004c9f8 <__mulsi3>: 4c9f8: 0005883a mov r2,zero 4c9fc: 20000726 beq r4,zero,4ca1c <__mulsi3+0x24> 4ca00: 20c0004c andi r3,r4,1 4ca04: 2008d07a srli r4,r4,1 4ca08: 18000126 beq r3,zero,4ca10 <__mulsi3+0x18> 4ca0c: 1145883a add r2,r2,r5 4ca10: 294b883a add r5,r5,r5 4ca14: 203ffa1e bne r4,zero,4ca00 <__alt_data_end+0xfffdaa00> 4ca18: f800283a ret 4ca1c: f800283a ret 0004ca20 <__divdf3>: 4ca20: defff004 addi sp,sp,-64 4ca24: dc800815 stw r18,32(sp) 4ca28: 2824d53a srli r18,r5,20 4ca2c: dd800c15 stw r22,48(sp) 4ca30: 282cd7fa srli r22,r5,31 4ca34: dc000615 stw r16,24(sp) 4ca38: 04000434 movhi r16,16 4ca3c: 843fffc4 addi r16,r16,-1 4ca40: dfc00f15 stw ra,60(sp) 4ca44: df000e15 stw fp,56(sp) 4ca48: ddc00d15 stw r23,52(sp) 4ca4c: dd400b15 stw r21,44(sp) 4ca50: dd000a15 stw r20,40(sp) 4ca54: dcc00915 stw r19,36(sp) 4ca58: dc400715 stw r17,28(sp) 4ca5c: 9481ffcc andi r18,r18,2047 4ca60: 2c20703a and r16,r5,r16 4ca64: b2003fcc andi r8,r22,255 4ca68: 90006126 beq r18,zero,4cbf0 <__divdf3+0x1d0> 4ca6c: 0081ffc4 movi r2,2047 4ca70: 202b883a mov r21,r4 4ca74: 90803726 beq r18,r2,4cb54 <__divdf3+0x134> 4ca78: 80800434 orhi r2,r16,16 4ca7c: 100490fa slli r2,r2,3 4ca80: 2020d77a srli r16,r4,29 4ca84: 202a90fa slli r21,r4,3 4ca88: 94bf0044 addi r18,r18,-1023 4ca8c: 80a0b03a or r16,r16,r2 4ca90: 0013883a mov r9,zero 4ca94: 000b883a mov r5,zero 4ca98: 3806d53a srli r3,r7,20 4ca9c: 382ed7fa srli r23,r7,31 4caa0: 04400434 movhi r17,16 4caa4: 8c7fffc4 addi r17,r17,-1 4caa8: 18c1ffcc andi r3,r3,2047 4caac: 3029883a mov r20,r6 4cab0: 3c62703a and r17,r7,r17 4cab4: bf003fcc andi fp,r23,255 4cab8: 18006e26 beq r3,zero,4cc74 <__divdf3+0x254> 4cabc: 0081ffc4 movi r2,2047 4cac0: 18806626 beq r3,r2,4cc5c <__divdf3+0x23c> 4cac4: 88800434 orhi r2,r17,16 4cac8: 100490fa slli r2,r2,3 4cacc: 3022d77a srli r17,r6,29 4cad0: 302890fa slli r20,r6,3 4cad4: 18ff0044 addi r3,r3,-1023 4cad8: 88a2b03a or r17,r17,r2 4cadc: 000f883a mov r7,zero 4cae0: b5e6f03a xor r19,r22,r23 4cae4: 3a4cb03a or r6,r7,r9 4cae8: 008003c4 movi r2,15 4caec: 9809883a mov r4,r19 4caf0: 90c7c83a sub r3,r18,r3 4caf4: 9cc03fcc andi r19,r19,255 4caf8: 11809636 bltu r2,r6,4cd54 <__divdf3+0x334> 4cafc: 300c90ba slli r6,r6,2 4cb00: 00800174 movhi r2,5 4cb04: 10b2c504 addi r2,r2,-13548 4cb08: 308d883a add r6,r6,r2 4cb0c: 30800017 ldw r2,0(r6) 4cb10: 1000683a jmp r2 4cb14: 0004cd54 movui zero,4917 4cb18: 0004cb8c andi zero,zero,4910 4cb1c: 0004cd44 movi zero,4917 4cb20: 0004cb80 call 4cb8 <__alt_mem_onchip_memory2-0x3b348> 4cb24: 0004cd44 movi zero,4917 4cb28: 0004cd18 cmpnei zero,zero,4916 4cb2c: 0004cd44 movi zero,4917 4cb30: 0004cb80 call 4cb8 <__alt_mem_onchip_memory2-0x3b348> 4cb34: 0004cb8c andi zero,zero,4910 4cb38: 0004cb8c andi zero,zero,4910 4cb3c: 0004cd18 cmpnei zero,zero,4916 4cb40: 0004cb80 call 4cb8 <__alt_mem_onchip_memory2-0x3b348> 4cb44: 0004cb70 cmpltui zero,zero,4909 4cb48: 0004cb70 cmpltui zero,zero,4909 4cb4c: 0004cb70 cmpltui zero,zero,4909 4cb50: 0004d0dc xori zero,zero,4931 4cb54: 2404b03a or r2,r4,r16 4cb58: 10006c1e bne r2,zero,4cd0c <__divdf3+0x2ec> 4cb5c: 02400204 movi r9,8 4cb60: 0021883a mov r16,zero 4cb64: 002b883a mov r21,zero 4cb68: 01400084 movi r5,2 4cb6c: 003fca06 br 4ca98 <__alt_data_end+0xfffdaa98> 4cb70: 8023883a mov r17,r16 4cb74: a829883a mov r20,r21 4cb78: 4039883a mov fp,r8 4cb7c: 280f883a mov r7,r5 4cb80: 00800084 movi r2,2 4cb84: 3881601e bne r7,r2,4d108 <__divdf3+0x6e8> 4cb88: e027883a mov r19,fp 4cb8c: 9900004c andi r4,r19,1 4cb90: 0081ffc4 movi r2,2047 4cb94: 0021883a mov r16,zero 4cb98: 002b883a mov r21,zero 4cb9c: 1004953a slli r2,r2,20 4cba0: 20c03fcc andi r3,r4,255 4cba4: 01400434 movhi r5,16 4cba8: 297fffc4 addi r5,r5,-1 4cbac: 180697fa slli r3,r3,31 4cbb0: 8160703a and r16,r16,r5 4cbb4: 80a0b03a or r16,r16,r2 4cbb8: 80c6b03a or r3,r16,r3 4cbbc: a805883a mov r2,r21 4cbc0: dfc00f17 ldw ra,60(sp) 4cbc4: df000e17 ldw fp,56(sp) 4cbc8: ddc00d17 ldw r23,52(sp) 4cbcc: dd800c17 ldw r22,48(sp) 4cbd0: dd400b17 ldw r21,44(sp) 4cbd4: dd000a17 ldw r20,40(sp) 4cbd8: dcc00917 ldw r19,36(sp) 4cbdc: dc800817 ldw r18,32(sp) 4cbe0: dc400717 ldw r17,28(sp) 4cbe4: dc000617 ldw r16,24(sp) 4cbe8: dec01004 addi sp,sp,64 4cbec: f800283a ret 4cbf0: 2404b03a or r2,r4,r16 4cbf4: 2023883a mov r17,r4 4cbf8: 10003f26 beq r2,zero,4ccf8 <__divdf3+0x2d8> 4cbfc: 80015e26 beq r16,zero,4d178 <__divdf3+0x758> 4cc00: 8009883a mov r4,r16 4cc04: d9800215 stw r6,8(sp) 4cc08: d9c00515 stw r7,20(sp) 4cc0c: da000415 stw r8,16(sp) 4cc10: 0041efc0 call 41efc <__clzsi2> 4cc14: d9800217 ldw r6,8(sp) 4cc18: d9c00517 ldw r7,20(sp) 4cc1c: da000417 ldw r8,16(sp) 4cc20: 113ffd44 addi r4,r2,-11 4cc24: 00c00704 movi r3,28 4cc28: 19014f16 blt r3,r4,4d168 <__divdf3+0x748> 4cc2c: 00c00744 movi r3,29 4cc30: 157ffe04 addi r21,r2,-8 4cc34: 1907c83a sub r3,r3,r4 4cc38: 8560983a sll r16,r16,r21 4cc3c: 88c6d83a srl r3,r17,r3 4cc40: 8d6a983a sll r21,r17,r21 4cc44: 1c20b03a or r16,r3,r16 4cc48: 1080fcc4 addi r2,r2,1011 4cc4c: 00a5c83a sub r18,zero,r2 4cc50: 0013883a mov r9,zero 4cc54: 000b883a mov r5,zero 4cc58: 003f8f06 br 4ca98 <__alt_data_end+0xfffdaa98> 4cc5c: 3444b03a or r2,r6,r17 4cc60: 1000231e bne r2,zero,4ccf0 <__divdf3+0x2d0> 4cc64: 0023883a mov r17,zero 4cc68: 0029883a mov r20,zero 4cc6c: 01c00084 movi r7,2 4cc70: 003f9b06 br 4cae0 <__alt_data_end+0xfffdaae0> 4cc74: 3444b03a or r2,r6,r17 4cc78: 10001926 beq r2,zero,4cce0 <__divdf3+0x2c0> 4cc7c: 88014b26 beq r17,zero,4d1ac <__divdf3+0x78c> 4cc80: 8809883a mov r4,r17 4cc84: d9400115 stw r5,4(sp) 4cc88: d9800215 stw r6,8(sp) 4cc8c: da000415 stw r8,16(sp) 4cc90: da400315 stw r9,12(sp) 4cc94: 0041efc0 call 41efc <__clzsi2> 4cc98: d9400117 ldw r5,4(sp) 4cc9c: d9800217 ldw r6,8(sp) 4cca0: da000417 ldw r8,16(sp) 4cca4: da400317 ldw r9,12(sp) 4cca8: 113ffd44 addi r4,r2,-11 4ccac: 00c00704 movi r3,28 4ccb0: 19013a16 blt r3,r4,4d19c <__divdf3+0x77c> 4ccb4: 00c00744 movi r3,29 4ccb8: 153ffe04 addi r20,r2,-8 4ccbc: 1907c83a sub r3,r3,r4 4ccc0: 8d22983a sll r17,r17,r20 4ccc4: 30c6d83a srl r3,r6,r3 4ccc8: 3528983a sll r20,r6,r20 4cccc: 1c62b03a or r17,r3,r17 4ccd0: 1080fcc4 addi r2,r2,1011 4ccd4: 0087c83a sub r3,zero,r2 4ccd8: 000f883a mov r7,zero 4ccdc: 003f8006 br 4cae0 <__alt_data_end+0xfffdaae0> 4cce0: 0023883a mov r17,zero 4cce4: 0029883a mov r20,zero 4cce8: 01c00044 movi r7,1 4ccec: 003f7c06 br 4cae0 <__alt_data_end+0xfffdaae0> 4ccf0: 01c000c4 movi r7,3 4ccf4: 003f7a06 br 4cae0 <__alt_data_end+0xfffdaae0> 4ccf8: 02400104 movi r9,4 4ccfc: 0021883a mov r16,zero 4cd00: 002b883a mov r21,zero 4cd04: 01400044 movi r5,1 4cd08: 003f6306 br 4ca98 <__alt_data_end+0xfffdaa98> 4cd0c: 02400304 movi r9,12 4cd10: 014000c4 movi r5,3 4cd14: 003f6006 br 4ca98 <__alt_data_end+0xfffdaa98> 4cd18: 04000434 movhi r16,16 4cd1c: 0009883a mov r4,zero 4cd20: 843fffc4 addi r16,r16,-1 4cd24: 057fffc4 movi r21,-1 4cd28: 0081ffc4 movi r2,2047 4cd2c: 003f9b06 br 4cb9c <__alt_data_end+0xfffdab9c> 4cd30: 00c00044 movi r3,1 4cd34: 1887c83a sub r3,r3,r2 4cd38: 01000e04 movi r4,56 4cd3c: 20c1530e bge r4,r3,4d28c <__divdf3+0x86c> 4cd40: 9900004c andi r4,r19,1 4cd44: 0005883a mov r2,zero 4cd48: 0021883a mov r16,zero 4cd4c: 002b883a mov r21,zero 4cd50: 003f9206 br 4cb9c <__alt_data_end+0xfffdab9c> 4cd54: 8c012e36 bltu r17,r16,4d210 <__divdf3+0x7f0> 4cd58: 84412c26 beq r16,r17,4d20c <__divdf3+0x7ec> 4cd5c: a82f883a mov r23,r21 4cd60: 18ffffc4 addi r3,r3,-1 4cd64: 002b883a mov r21,zero 4cd68: a004d63a srli r2,r20,24 4cd6c: 8822923a slli r17,r17,8 4cd70: a028923a slli r20,r20,8 4cd74: 8009883a mov r4,r16 4cd78: 88acb03a or r22,r17,r2 4cd7c: dd000015 stw r20,0(sp) 4cd80: b028d43a srli r20,r22,16 4cd84: d8c00215 stw r3,8(sp) 4cd88: b4bfffcc andi r18,r22,65535 4cd8c: a00b883a mov r5,r20 4cd90: 004c93c0 call 4c93c <__udivsi3> 4cd94: 100b883a mov r5,r2 4cd98: 9009883a mov r4,r18 4cd9c: 1023883a mov r17,r2 4cda0: 004c9f80 call 4c9f8 <__mulsi3> 4cda4: 8009883a mov r4,r16 4cda8: a00b883a mov r5,r20 4cdac: 1039883a mov fp,r2 4cdb0: 004c9a00 call 4c9a0 <__umodsi3> 4cdb4: 1004943a slli r2,r2,16 4cdb8: b808d43a srli r4,r23,16 4cdbc: d8c00217 ldw r3,8(sp) 4cdc0: 2084b03a or r2,r4,r2 4cdc4: 1700062e bgeu r2,fp,4cde0 <__divdf3+0x3c0> 4cdc8: 1585883a add r2,r2,r22 4cdcc: 893fffc4 addi r4,r17,-1 4cdd0: 15811d36 bltu r2,r22,4d248 <__divdf3+0x828> 4cdd4: 17011c2e bgeu r2,fp,4d248 <__divdf3+0x828> 4cdd8: 8c7fff84 addi r17,r17,-2 4cddc: 1585883a add r2,r2,r22 4cde0: 1739c83a sub fp,r2,fp 4cde4: a00b883a mov r5,r20 4cde8: e009883a mov r4,fp 4cdec: d8c00215 stw r3,8(sp) 4cdf0: 004c93c0 call 4c93c <__udivsi3> 4cdf4: 100b883a mov r5,r2 4cdf8: 9009883a mov r4,r18 4cdfc: 1021883a mov r16,r2 4ce00: 004c9f80 call 4c9f8 <__mulsi3> 4ce04: a00b883a mov r5,r20 4ce08: e009883a mov r4,fp 4ce0c: d8800415 stw r2,16(sp) 4ce10: 004c9a00 call 4c9a0 <__umodsi3> 4ce14: 1004943a slli r2,r2,16 4ce18: da000417 ldw r8,16(sp) 4ce1c: bdffffcc andi r23,r23,65535 4ce20: b884b03a or r2,r23,r2 4ce24: d8c00217 ldw r3,8(sp) 4ce28: 1200062e bgeu r2,r8,4ce44 <__divdf3+0x424> 4ce2c: 1585883a add r2,r2,r22 4ce30: 813fffc4 addi r4,r16,-1 4ce34: 15810236 bltu r2,r22,4d240 <__divdf3+0x820> 4ce38: 1201012e bgeu r2,r8,4d240 <__divdf3+0x820> 4ce3c: 843fff84 addi r16,r16,-2 4ce40: 1585883a add r2,r2,r22 4ce44: 8822943a slli r17,r17,16 4ce48: d9800017 ldw r6,0(sp) 4ce4c: 1211c83a sub r8,r2,r8 4ce50: 8c22b03a or r17,r17,r16 4ce54: 373fffcc andi fp,r6,65535 4ce58: 8abfffcc andi r10,r17,65535 4ce5c: 8820d43a srli r16,r17,16 4ce60: 5009883a mov r4,r10 4ce64: e00b883a mov r5,fp 4ce68: 302ed43a srli r23,r6,16 4ce6c: d8c00215 stw r3,8(sp) 4ce70: da000415 stw r8,16(sp) 4ce74: da800115 stw r10,4(sp) 4ce78: 004c9f80 call 4c9f8 <__mulsi3> 4ce7c: 800b883a mov r5,r16 4ce80: e009883a mov r4,fp 4ce84: d8800515 stw r2,20(sp) 4ce88: 004c9f80 call 4c9f8 <__mulsi3> 4ce8c: 8009883a mov r4,r16 4ce90: b80b883a mov r5,r23 4ce94: d8800315 stw r2,12(sp) 4ce98: 004c9f80 call 4c9f8 <__mulsi3> 4ce9c: da800117 ldw r10,4(sp) 4cea0: b80b883a mov r5,r23 4cea4: 1021883a mov r16,r2 4cea8: 5009883a mov r4,r10 4ceac: 004c9f80 call 4c9f8 <__mulsi3> 4ceb0: d9c00517 ldw r7,20(sp) 4ceb4: da400317 ldw r9,12(sp) 4ceb8: d8c00217 ldw r3,8(sp) 4cebc: 3808d43a srli r4,r7,16 4cec0: 1245883a add r2,r2,r9 4cec4: da000417 ldw r8,16(sp) 4cec8: 2085883a add r2,r4,r2 4cecc: 1240022e bgeu r2,r9,4ced8 <__divdf3+0x4b8> 4ced0: 01000074 movhi r4,1 4ced4: 8121883a add r16,r16,r4 4ced8: 1008d43a srli r4,r2,16 4cedc: 1004943a slli r2,r2,16 4cee0: 39ffffcc andi r7,r7,65535 4cee4: 2409883a add r4,r4,r16 4cee8: 11c5883a add r2,r2,r7 4ceec: 4100bb36 bltu r8,r4,4d1dc <__divdf3+0x7bc> 4cef0: 4100d726 beq r8,r4,4d250 <__divdf3+0x830> 4cef4: 4109c83a sub r4,r8,r4 4cef8: a8a1c83a sub r16,r21,r2 4cefc: ac2b803a cmpltu r21,r21,r16 4cf00: 256bc83a sub r21,r4,r21 4cf04: b540d926 beq r22,r21,4d26c <__divdf3+0x84c> 4cf08: a00b883a mov r5,r20 4cf0c: a809883a mov r4,r21 4cf10: d8c00215 stw r3,8(sp) 4cf14: 004c93c0 call 4c93c <__udivsi3> 4cf18: 100b883a mov r5,r2 4cf1c: 9009883a mov r4,r18 4cf20: d8800515 stw r2,20(sp) 4cf24: 004c9f80 call 4c9f8 <__mulsi3> 4cf28: a809883a mov r4,r21 4cf2c: a00b883a mov r5,r20 4cf30: d8800415 stw r2,16(sp) 4cf34: 004c9a00 call 4c9a0 <__umodsi3> 4cf38: 1004943a slli r2,r2,16 4cf3c: 8008d43a srli r4,r16,16 4cf40: da000417 ldw r8,16(sp) 4cf44: d8c00217 ldw r3,8(sp) 4cf48: 2084b03a or r2,r4,r2 4cf4c: d9c00517 ldw r7,20(sp) 4cf50: 1200062e bgeu r2,r8,4cf6c <__divdf3+0x54c> 4cf54: 1585883a add r2,r2,r22 4cf58: 393fffc4 addi r4,r7,-1 4cf5c: 1580c536 bltu r2,r22,4d274 <__divdf3+0x854> 4cf60: 1200c42e bgeu r2,r8,4d274 <__divdf3+0x854> 4cf64: 39ffff84 addi r7,r7,-2 4cf68: 1585883a add r2,r2,r22 4cf6c: 122bc83a sub r21,r2,r8 4cf70: a00b883a mov r5,r20 4cf74: a809883a mov r4,r21 4cf78: d8c00215 stw r3,8(sp) 4cf7c: d9c00515 stw r7,20(sp) 4cf80: 004c93c0 call 4c93c <__udivsi3> 4cf84: 9009883a mov r4,r18 4cf88: 100b883a mov r5,r2 4cf8c: d8800415 stw r2,16(sp) 4cf90: 004c9f80 call 4c9f8 <__mulsi3> 4cf94: a809883a mov r4,r21 4cf98: a00b883a mov r5,r20 4cf9c: 1025883a mov r18,r2 4cfa0: 004c9a00 call 4c9a0 <__umodsi3> 4cfa4: 1004943a slli r2,r2,16 4cfa8: 813fffcc andi r4,r16,65535 4cfac: d8c00217 ldw r3,8(sp) 4cfb0: 20a0b03a or r16,r4,r2 4cfb4: d9c00517 ldw r7,20(sp) 4cfb8: da000417 ldw r8,16(sp) 4cfbc: 8480062e bgeu r16,r18,4cfd8 <__divdf3+0x5b8> 4cfc0: 85a1883a add r16,r16,r22 4cfc4: 40bfffc4 addi r2,r8,-1 4cfc8: 8580ac36 bltu r16,r22,4d27c <__divdf3+0x85c> 4cfcc: 8480ab2e bgeu r16,r18,4d27c <__divdf3+0x85c> 4cfd0: 423fff84 addi r8,r8,-2 4cfd4: 85a1883a add r16,r16,r22 4cfd8: 3804943a slli r2,r7,16 4cfdc: 84a1c83a sub r16,r16,r18 4cfe0: e009883a mov r4,fp 4cfe4: 1228b03a or r20,r2,r8 4cfe8: a1ffffcc andi r7,r20,65535 4cfec: a024d43a srli r18,r20,16 4cff0: 380b883a mov r5,r7 4cff4: d8c00215 stw r3,8(sp) 4cff8: d9c00515 stw r7,20(sp) 4cffc: 004c9f80 call 4c9f8 <__mulsi3> 4d000: 900b883a mov r5,r18 4d004: e009883a mov r4,fp 4d008: 102b883a mov r21,r2 4d00c: 004c9f80 call 4c9f8 <__mulsi3> 4d010: 900b883a mov r5,r18 4d014: b809883a mov r4,r23 4d018: 1039883a mov fp,r2 4d01c: 004c9f80 call 4c9f8 <__mulsi3> 4d020: d9c00517 ldw r7,20(sp) 4d024: b80b883a mov r5,r23 4d028: 1025883a mov r18,r2 4d02c: 3809883a mov r4,r7 4d030: 004c9f80 call 4c9f8 <__mulsi3> 4d034: a808d43a srli r4,r21,16 4d038: 1705883a add r2,r2,fp 4d03c: d8c00217 ldw r3,8(sp) 4d040: 2085883a add r2,r4,r2 4d044: 1700022e bgeu r2,fp,4d050 <__divdf3+0x630> 4d048: 01000074 movhi r4,1 4d04c: 9125883a add r18,r18,r4 4d050: 1008d43a srli r4,r2,16 4d054: 1004943a slli r2,r2,16 4d058: ad7fffcc andi r21,r21,65535 4d05c: 2489883a add r4,r4,r18 4d060: 1545883a add r2,r2,r21 4d064: 81003836 bltu r16,r4,4d148 <__divdf3+0x728> 4d068: 81003626 beq r16,r4,4d144 <__divdf3+0x724> 4d06c: a5000054 ori r20,r20,1 4d070: 1880ffc4 addi r2,r3,1023 4d074: 00bf2e0e bge zero,r2,4cd30 <__alt_data_end+0xfffdad30> 4d078: a10001cc andi r4,r20,7 4d07c: 20000726 beq r4,zero,4d09c <__divdf3+0x67c> 4d080: a10003cc andi r4,r20,15 4d084: 01400104 movi r5,4 4d088: 21400426 beq r4,r5,4d09c <__divdf3+0x67c> 4d08c: a149883a add r4,r20,r5 4d090: 2529803a cmpltu r20,r4,r20 4d094: 8d23883a add r17,r17,r20 4d098: 2029883a mov r20,r4 4d09c: 8900402c andhi r4,r17,256 4d0a0: 20000426 beq r4,zero,4d0b4 <__divdf3+0x694> 4d0a4: 18810004 addi r2,r3,1024 4d0a8: 00ffc034 movhi r3,65280 4d0ac: 18ffffc4 addi r3,r3,-1 4d0b0: 88e2703a and r17,r17,r3 4d0b4: 00c1ff84 movi r3,2046 4d0b8: 18beb416 blt r3,r2,4cb8c <__alt_data_end+0xfffdab8c> 4d0bc: a028d0fa srli r20,r20,3 4d0c0: 882a977a slli r21,r17,29 4d0c4: 8820927a slli r16,r17,9 4d0c8: 1081ffcc andi r2,r2,2047 4d0cc: ad2ab03a or r21,r21,r20 4d0d0: 8020d33a srli r16,r16,12 4d0d4: 9900004c andi r4,r19,1 4d0d8: 003eb006 br 4cb9c <__alt_data_end+0xfffdab9c> 4d0dc: 8080022c andhi r2,r16,8 4d0e0: 10001226 beq r2,zero,4d12c <__divdf3+0x70c> 4d0e4: 8880022c andhi r2,r17,8 4d0e8: 1000101e bne r2,zero,4d12c <__divdf3+0x70c> 4d0ec: 00800434 movhi r2,16 4d0f0: 8c000234 orhi r16,r17,8 4d0f4: 10bfffc4 addi r2,r2,-1 4d0f8: b809883a mov r4,r23 4d0fc: 80a0703a and r16,r16,r2 4d100: a02b883a mov r21,r20 4d104: 003f0806 br 4cd28 <__alt_data_end+0xfffdad28> 4d108: 008000c4 movi r2,3 4d10c: 3880b126 beq r7,r2,4d3d4 <__divdf3+0x9b4> 4d110: 00800044 movi r2,1 4d114: 38805b1e bne r7,r2,4d284 <__divdf3+0x864> 4d118: e009883a mov r4,fp 4d11c: 0005883a mov r2,zero 4d120: 0021883a mov r16,zero 4d124: 002b883a mov r21,zero 4d128: 003e9c06 br 4cb9c <__alt_data_end+0xfffdab9c> 4d12c: 00800434 movhi r2,16 4d130: 84000234 orhi r16,r16,8 4d134: 10bfffc4 addi r2,r2,-1 4d138: b009883a mov r4,r22 4d13c: 80a0703a and r16,r16,r2 4d140: 003ef906 br 4cd28 <__alt_data_end+0xfffdad28> 4d144: 103fca26 beq r2,zero,4d070 <__alt_data_end+0xfffdb070> 4d148: b421883a add r16,r22,r16 4d14c: a17fffc4 addi r5,r20,-1 4d150: 8580422e bgeu r16,r22,4d25c <__divdf3+0x83c> 4d154: 2829883a mov r20,r5 4d158: 813fc41e bne r16,r4,4d06c <__alt_data_end+0xfffdb06c> 4d15c: d9800017 ldw r6,0(sp) 4d160: 30bfc21e bne r6,r2,4d06c <__alt_data_end+0xfffdb06c> 4d164: 003fc206 br 4d070 <__alt_data_end+0xfffdb070> 4d168: 143ff604 addi r16,r2,-40 4d16c: 8c20983a sll r16,r17,r16 4d170: 002b883a mov r21,zero 4d174: 003eb406 br 4cc48 <__alt_data_end+0xfffdac48> 4d178: d9800215 stw r6,8(sp) 4d17c: d9c00515 stw r7,20(sp) 4d180: da000415 stw r8,16(sp) 4d184: 0041efc0 call 41efc <__clzsi2> 4d188: 10800804 addi r2,r2,32 4d18c: da000417 ldw r8,16(sp) 4d190: d9c00517 ldw r7,20(sp) 4d194: d9800217 ldw r6,8(sp) 4d198: 003ea106 br 4cc20 <__alt_data_end+0xfffdac20> 4d19c: 147ff604 addi r17,r2,-40 4d1a0: 3462983a sll r17,r6,r17 4d1a4: 0029883a mov r20,zero 4d1a8: 003ec906 br 4ccd0 <__alt_data_end+0xfffdacd0> 4d1ac: 3009883a mov r4,r6 4d1b0: d9400115 stw r5,4(sp) 4d1b4: d9800215 stw r6,8(sp) 4d1b8: da000415 stw r8,16(sp) 4d1bc: da400315 stw r9,12(sp) 4d1c0: 0041efc0 call 41efc <__clzsi2> 4d1c4: 10800804 addi r2,r2,32 4d1c8: da400317 ldw r9,12(sp) 4d1cc: da000417 ldw r8,16(sp) 4d1d0: d9800217 ldw r6,8(sp) 4d1d4: d9400117 ldw r5,4(sp) 4d1d8: 003eb306 br 4cca8 <__alt_data_end+0xfffdaca8> 4d1dc: d9800017 ldw r6,0(sp) 4d1e0: a9ab883a add r21,r21,r6 4d1e4: a98b803a cmpltu r5,r21,r6 4d1e8: 2d8b883a add r5,r5,r22 4d1ec: 2a11883a add r8,r5,r8 4d1f0: 897fffc4 addi r5,r17,-1 4d1f4: b2000c2e bgeu r22,r8,4d228 <__divdf3+0x808> 4d1f8: 41003f36 bltu r8,r4,4d2f8 <__divdf3+0x8d8> 4d1fc: 22006c26 beq r4,r8,4d3b0 <__divdf3+0x990> 4d200: 4109c83a sub r4,r8,r4 4d204: 2823883a mov r17,r5 4d208: 003f3b06 br 4cef8 <__alt_data_end+0xfffdaef8> 4d20c: ad3ed336 bltu r21,r20,4cd5c <__alt_data_end+0xfffdad5c> 4d210: a804d07a srli r2,r21,1 4d214: 802e97fa slli r23,r16,31 4d218: a82a97fa slli r21,r21,31 4d21c: 8020d07a srli r16,r16,1 4d220: b8aeb03a or r23,r23,r2 4d224: 003ed006 br 4cd68 <__alt_data_end+0xfffdad68> 4d228: b23ff51e bne r22,r8,4d200 <__alt_data_end+0xfffdb200> 4d22c: d9800017 ldw r6,0(sp) 4d230: a9bff12e bgeu r21,r6,4d1f8 <__alt_data_end+0xfffdb1f8> 4d234: b109c83a sub r4,r22,r4 4d238: 2823883a mov r17,r5 4d23c: 003f2e06 br 4cef8 <__alt_data_end+0xfffdaef8> 4d240: 2021883a mov r16,r4 4d244: 003eff06 br 4ce44 <__alt_data_end+0xfffdae44> 4d248: 2023883a mov r17,r4 4d24c: 003ee406 br 4cde0 <__alt_data_end+0xfffdade0> 4d250: a8bfe236 bltu r21,r2,4d1dc <__alt_data_end+0xfffdb1dc> 4d254: 0009883a mov r4,zero 4d258: 003f2706 br 4cef8 <__alt_data_end+0xfffdaef8> 4d25c: 81002d36 bltu r16,r4,4d314 <__divdf3+0x8f4> 4d260: 24005626 beq r4,r16,4d3bc <__divdf3+0x99c> 4d264: 2829883a mov r20,r5 4d268: 003f8006 br 4d06c <__alt_data_end+0xfffdb06c> 4d26c: 053fffc4 movi r20,-1 4d270: 003f7f06 br 4d070 <__alt_data_end+0xfffdb070> 4d274: 200f883a mov r7,r4 4d278: 003f3c06 br 4cf6c <__alt_data_end+0xfffdaf6c> 4d27c: 1011883a mov r8,r2 4d280: 003f5506 br 4cfd8 <__alt_data_end+0xfffdafd8> 4d284: e027883a mov r19,fp 4d288: 003f7906 br 4d070 <__alt_data_end+0xfffdb070> 4d28c: 010007c4 movi r4,31 4d290: 20c02816 blt r4,r3,4d334 <__divdf3+0x914> 4d294: 00800804 movi r2,32 4d298: 10c5c83a sub r2,r2,r3 4d29c: 888a983a sll r5,r17,r2 4d2a0: a0c8d83a srl r4,r20,r3 4d2a4: a084983a sll r2,r20,r2 4d2a8: 88e2d83a srl r17,r17,r3 4d2ac: 2906b03a or r3,r5,r4 4d2b0: 1004c03a cmpne r2,r2,zero 4d2b4: 1886b03a or r3,r3,r2 4d2b8: 188001cc andi r2,r3,7 4d2bc: 10000726 beq r2,zero,4d2dc <__divdf3+0x8bc> 4d2c0: 188003cc andi r2,r3,15 4d2c4: 01000104 movi r4,4 4d2c8: 11000426 beq r2,r4,4d2dc <__divdf3+0x8bc> 4d2cc: 1805883a mov r2,r3 4d2d0: 10c00104 addi r3,r2,4 4d2d4: 1885803a cmpltu r2,r3,r2 4d2d8: 88a3883a add r17,r17,r2 4d2dc: 8880202c andhi r2,r17,128 4d2e0: 10002926 beq r2,zero,4d388 <__divdf3+0x968> 4d2e4: 9900004c andi r4,r19,1 4d2e8: 00800044 movi r2,1 4d2ec: 0021883a mov r16,zero 4d2f0: 002b883a mov r21,zero 4d2f4: 003e2906 br 4cb9c <__alt_data_end+0xfffdab9c> 4d2f8: d9800017 ldw r6,0(sp) 4d2fc: 8c7fff84 addi r17,r17,-2 4d300: a9ab883a add r21,r21,r6 4d304: a98b803a cmpltu r5,r21,r6 4d308: 2d8b883a add r5,r5,r22 4d30c: 2a11883a add r8,r5,r8 4d310: 003ef806 br 4cef4 <__alt_data_end+0xfffdaef4> 4d314: d9800017 ldw r6,0(sp) 4d318: 318f883a add r7,r6,r6 4d31c: 398b803a cmpltu r5,r7,r6 4d320: 2d8d883a add r6,r5,r22 4d324: 81a1883a add r16,r16,r6 4d328: a17fff84 addi r5,r20,-2 4d32c: d9c00015 stw r7,0(sp) 4d330: 003f8806 br 4d154 <__alt_data_end+0xfffdb154> 4d334: 013ff844 movi r4,-31 4d338: 2085c83a sub r2,r4,r2 4d33c: 8888d83a srl r4,r17,r2 4d340: 00800804 movi r2,32 4d344: 18802126 beq r3,r2,4d3cc <__divdf3+0x9ac> 4d348: 04001004 movi r16,64 4d34c: 80c7c83a sub r3,r16,r3 4d350: 88e0983a sll r16,r17,r3 4d354: 8504b03a or r2,r16,r20 4d358: 1004c03a cmpne r2,r2,zero 4d35c: 2084b03a or r2,r4,r2 4d360: 144001cc andi r17,r2,7 4d364: 88000d1e bne r17,zero,4d39c <__divdf3+0x97c> 4d368: 0021883a mov r16,zero 4d36c: 102ad0fa srli r21,r2,3 4d370: 9900004c andi r4,r19,1 4d374: 0005883a mov r2,zero 4d378: ac6ab03a or r21,r21,r17 4d37c: 003e0706 br 4cb9c <__alt_data_end+0xfffdab9c> 4d380: 1007883a mov r3,r2 4d384: 0023883a mov r17,zero 4d388: 8820927a slli r16,r17,9 4d38c: 1805883a mov r2,r3 4d390: 8822977a slli r17,r17,29 4d394: 8020d33a srli r16,r16,12 4d398: 003ff406 br 4d36c <__alt_data_end+0xfffdb36c> 4d39c: 10c003cc andi r3,r2,15 4d3a0: 01000104 movi r4,4 4d3a4: 193ff626 beq r3,r4,4d380 <__alt_data_end+0xfffdb380> 4d3a8: 0023883a mov r17,zero 4d3ac: 003fc806 br 4d2d0 <__alt_data_end+0xfffdb2d0> 4d3b0: a8bfd136 bltu r21,r2,4d2f8 <__alt_data_end+0xfffdb2f8> 4d3b4: 2823883a mov r17,r5 4d3b8: 003fa606 br 4d254 <__alt_data_end+0xfffdb254> 4d3bc: d9800017 ldw r6,0(sp) 4d3c0: 30bfd436 bltu r6,r2,4d314 <__alt_data_end+0xfffdb314> 4d3c4: 2829883a mov r20,r5 4d3c8: 003f6406 br 4d15c <__alt_data_end+0xfffdb15c> 4d3cc: 0021883a mov r16,zero 4d3d0: 003fe006 br 4d354 <__alt_data_end+0xfffdb354> 4d3d4: 00800434 movhi r2,16 4d3d8: 8c000234 orhi r16,r17,8 4d3dc: 10bfffc4 addi r2,r2,-1 4d3e0: e009883a mov r4,fp 4d3e4: 80a0703a and r16,r16,r2 4d3e8: a02b883a mov r21,r20 4d3ec: 003e4e06 br 4cd28 <__alt_data_end+0xfffdad28> 0004d3f0 <__eqdf2>: 4d3f0: 2804d53a srli r2,r5,20 4d3f4: 3806d53a srli r3,r7,20 4d3f8: 02000434 movhi r8,16 4d3fc: 423fffc4 addi r8,r8,-1 4d400: 1081ffcc andi r2,r2,2047 4d404: 0281ffc4 movi r10,2047 4d408: 2a12703a and r9,r5,r8 4d40c: 18c1ffcc andi r3,r3,2047 4d410: 3a10703a and r8,r7,r8 4d414: 280ad7fa srli r5,r5,31 4d418: 380ed7fa srli r7,r7,31 4d41c: 12801026 beq r2,r10,4d460 <__eqdf2+0x70> 4d420: 0281ffc4 movi r10,2047 4d424: 1a800a26 beq r3,r10,4d450 <__eqdf2+0x60> 4d428: 10c00226 beq r2,r3,4d434 <__eqdf2+0x44> 4d42c: 00800044 movi r2,1 4d430: f800283a ret 4d434: 4a3ffd1e bne r9,r8,4d42c <__alt_data_end+0xfffdb42c> 4d438: 21bffc1e bne r4,r6,4d42c <__alt_data_end+0xfffdb42c> 4d43c: 29c00c26 beq r5,r7,4d470 <__eqdf2+0x80> 4d440: 103ffa1e bne r2,zero,4d42c <__alt_data_end+0xfffdb42c> 4d444: 2244b03a or r2,r4,r9 4d448: 1004c03a cmpne r2,r2,zero 4d44c: f800283a ret 4d450: 3214b03a or r10,r6,r8 4d454: 503ff426 beq r10,zero,4d428 <__alt_data_end+0xfffdb428> 4d458: 00800044 movi r2,1 4d45c: f800283a ret 4d460: 2254b03a or r10,r4,r9 4d464: 503fee26 beq r10,zero,4d420 <__alt_data_end+0xfffdb420> 4d468: 00800044 movi r2,1 4d46c: f800283a ret 4d470: 0005883a mov r2,zero 4d474: f800283a ret 0004d478 <__gedf2>: 4d478: 2804d53a srli r2,r5,20 4d47c: 3806d53a srli r3,r7,20 4d480: 02000434 movhi r8,16 4d484: 423fffc4 addi r8,r8,-1 4d488: 1081ffcc andi r2,r2,2047 4d48c: 0241ffc4 movi r9,2047 4d490: 2a14703a and r10,r5,r8 4d494: 18c1ffcc andi r3,r3,2047 4d498: 3a10703a and r8,r7,r8 4d49c: 280ad7fa srli r5,r5,31 4d4a0: 380ed7fa srli r7,r7,31 4d4a4: 12401d26 beq r2,r9,4d51c <__gedf2+0xa4> 4d4a8: 0241ffc4 movi r9,2047 4d4ac: 1a401226 beq r3,r9,4d4f8 <__gedf2+0x80> 4d4b0: 1000081e bne r2,zero,4d4d4 <__gedf2+0x5c> 4d4b4: 2296b03a or r11,r4,r10 4d4b8: 5813003a cmpeq r9,r11,zero 4d4bc: 1800091e bne r3,zero,4d4e4 <__gedf2+0x6c> 4d4c0: 3218b03a or r12,r6,r8 4d4c4: 6000071e bne r12,zero,4d4e4 <__gedf2+0x6c> 4d4c8: 0005883a mov r2,zero 4d4cc: 5800101e bne r11,zero,4d510 <__gedf2+0x98> 4d4d0: f800283a ret 4d4d4: 18000c1e bne r3,zero,4d508 <__gedf2+0x90> 4d4d8: 3212b03a or r9,r6,r8 4d4dc: 48000c26 beq r9,zero,4d510 <__gedf2+0x98> 4d4e0: 0013883a mov r9,zero 4d4e4: 39c03fcc andi r7,r7,255 4d4e8: 48000826 beq r9,zero,4d50c <__gedf2+0x94> 4d4ec: 38000926 beq r7,zero,4d514 <__gedf2+0x9c> 4d4f0: 00800044 movi r2,1 4d4f4: f800283a ret 4d4f8: 3212b03a or r9,r6,r8 4d4fc: 483fec26 beq r9,zero,4d4b0 <__alt_data_end+0xfffdb4b0> 4d500: 00bfff84 movi r2,-2 4d504: f800283a ret 4d508: 39c03fcc andi r7,r7,255 4d50c: 29c00626 beq r5,r7,4d528 <__gedf2+0xb0> 4d510: 283ff726 beq r5,zero,4d4f0 <__alt_data_end+0xfffdb4f0> 4d514: 00bfffc4 movi r2,-1 4d518: f800283a ret 4d51c: 2292b03a or r9,r4,r10 4d520: 483fe126 beq r9,zero,4d4a8 <__alt_data_end+0xfffdb4a8> 4d524: 003ff606 br 4d500 <__alt_data_end+0xfffdb500> 4d528: 18bff916 blt r3,r2,4d510 <__alt_data_end+0xfffdb510> 4d52c: 10c00316 blt r2,r3,4d53c <__gedf2+0xc4> 4d530: 42bff736 bltu r8,r10,4d510 <__alt_data_end+0xfffdb510> 4d534: 52000326 beq r10,r8,4d544 <__gedf2+0xcc> 4d538: 5200042e bgeu r10,r8,4d54c <__gedf2+0xd4> 4d53c: 283fec1e bne r5,zero,4d4f0 <__alt_data_end+0xfffdb4f0> 4d540: 003ff406 br 4d514 <__alt_data_end+0xfffdb514> 4d544: 313ff236 bltu r6,r4,4d510 <__alt_data_end+0xfffdb510> 4d548: 21bffc36 bltu r4,r6,4d53c <__alt_data_end+0xfffdb53c> 4d54c: 0005883a mov r2,zero 4d550: f800283a ret 0004d554 <__ledf2>: 4d554: 2804d53a srli r2,r5,20 4d558: 3810d53a srli r8,r7,20 4d55c: 00c00434 movhi r3,16 4d560: 18ffffc4 addi r3,r3,-1 4d564: 1081ffcc andi r2,r2,2047 4d568: 0241ffc4 movi r9,2047 4d56c: 28d4703a and r10,r5,r3 4d570: 4201ffcc andi r8,r8,2047 4d574: 38c6703a and r3,r7,r3 4d578: 280ad7fa srli r5,r5,31 4d57c: 380ed7fa srli r7,r7,31 4d580: 12401f26 beq r2,r9,4d600 <__ledf2+0xac> 4d584: 0241ffc4 movi r9,2047 4d588: 42401426 beq r8,r9,4d5dc <__ledf2+0x88> 4d58c: 1000091e bne r2,zero,4d5b4 <__ledf2+0x60> 4d590: 2296b03a or r11,r4,r10 4d594: 5813003a cmpeq r9,r11,zero 4d598: 29403fcc andi r5,r5,255 4d59c: 40000a1e bne r8,zero,4d5c8 <__ledf2+0x74> 4d5a0: 30d8b03a or r12,r6,r3 4d5a4: 6000081e bne r12,zero,4d5c8 <__ledf2+0x74> 4d5a8: 0005883a mov r2,zero 4d5ac: 5800111e bne r11,zero,4d5f4 <__ledf2+0xa0> 4d5b0: f800283a ret 4d5b4: 29403fcc andi r5,r5,255 4d5b8: 40000c1e bne r8,zero,4d5ec <__ledf2+0x98> 4d5bc: 30d2b03a or r9,r6,r3 4d5c0: 48000c26 beq r9,zero,4d5f4 <__ledf2+0xa0> 4d5c4: 0013883a mov r9,zero 4d5c8: 39c03fcc andi r7,r7,255 4d5cc: 48000826 beq r9,zero,4d5f0 <__ledf2+0x9c> 4d5d0: 38001126 beq r7,zero,4d618 <__ledf2+0xc4> 4d5d4: 00800044 movi r2,1 4d5d8: f800283a ret 4d5dc: 30d2b03a or r9,r6,r3 4d5e0: 483fea26 beq r9,zero,4d58c <__alt_data_end+0xfffdb58c> 4d5e4: 00800084 movi r2,2 4d5e8: f800283a ret 4d5ec: 39c03fcc andi r7,r7,255 4d5f0: 39400726 beq r7,r5,4d610 <__ledf2+0xbc> 4d5f4: 2800081e bne r5,zero,4d618 <__ledf2+0xc4> 4d5f8: 00800044 movi r2,1 4d5fc: f800283a ret 4d600: 2292b03a or r9,r4,r10 4d604: 483fdf26 beq r9,zero,4d584 <__alt_data_end+0xfffdb584> 4d608: 00800084 movi r2,2 4d60c: f800283a ret 4d610: 4080030e bge r8,r2,4d620 <__ledf2+0xcc> 4d614: 383fef26 beq r7,zero,4d5d4 <__alt_data_end+0xfffdb5d4> 4d618: 00bfffc4 movi r2,-1 4d61c: f800283a ret 4d620: 123feb16 blt r2,r8,4d5d0 <__alt_data_end+0xfffdb5d0> 4d624: 1abff336 bltu r3,r10,4d5f4 <__alt_data_end+0xfffdb5f4> 4d628: 50c00326 beq r10,r3,4d638 <__ledf2+0xe4> 4d62c: 50c0042e bgeu r10,r3,4d640 <__ledf2+0xec> 4d630: 283fe81e bne r5,zero,4d5d4 <__alt_data_end+0xfffdb5d4> 4d634: 003ff806 br 4d618 <__alt_data_end+0xfffdb618> 4d638: 313fee36 bltu r6,r4,4d5f4 <__alt_data_end+0xfffdb5f4> 4d63c: 21bffc36 bltu r4,r6,4d630 <__alt_data_end+0xfffdb630> 4d640: 0005883a mov r2,zero 4d644: f800283a ret 0004d648 <__muldf3>: 4d648: deffee04 addi sp,sp,-72 4d64c: dd000c15 stw r20,48(sp) 4d650: 2828d53a srli r20,r5,20 4d654: ddc00f15 stw r23,60(sp) 4d658: 282ed7fa srli r23,r5,31 4d65c: dc000815 stw r16,32(sp) 4d660: 04000434 movhi r16,16 4d664: dcc00b15 stw r19,44(sp) 4d668: 843fffc4 addi r16,r16,-1 4d66c: dfc01115 stw ra,68(sp) 4d670: df001015 stw fp,64(sp) 4d674: dd800e15 stw r22,56(sp) 4d678: dd400d15 stw r21,52(sp) 4d67c: dc800a15 stw r18,40(sp) 4d680: dc400915 stw r17,36(sp) 4d684: a501ffcc andi r20,r20,2047 4d688: 2c20703a and r16,r5,r16 4d68c: b827883a mov r19,r23 4d690: ba403fcc andi r9,r23,255 4d694: a0006026 beq r20,zero,4d818 <__muldf3+0x1d0> 4d698: 0081ffc4 movi r2,2047 4d69c: 202d883a mov r22,r4 4d6a0: a0803626 beq r20,r2,4d77c <__muldf3+0x134> 4d6a4: 84000434 orhi r16,r16,16 4d6a8: 200ad77a srli r5,r4,29 4d6ac: 800490fa slli r2,r16,3 4d6b0: 202c90fa slli r22,r4,3 4d6b4: a53f0044 addi r20,r20,-1023 4d6b8: 28a0b03a or r16,r5,r2 4d6bc: 002b883a mov r21,zero 4d6c0: 000b883a mov r5,zero 4d6c4: 3804d53a srli r2,r7,20 4d6c8: 3838d7fa srli fp,r7,31 4d6cc: 04400434 movhi r17,16 4d6d0: 8c7fffc4 addi r17,r17,-1 4d6d4: 1081ffcc andi r2,r2,2047 4d6d8: 3025883a mov r18,r6 4d6dc: 3c62703a and r17,r7,r17 4d6e0: e2803fcc andi r10,fp,255 4d6e4: 10006d26 beq r2,zero,4d89c <__muldf3+0x254> 4d6e8: 00c1ffc4 movi r3,2047 4d6ec: 10c06526 beq r2,r3,4d884 <__muldf3+0x23c> 4d6f0: 8c400434 orhi r17,r17,16 4d6f4: 300ed77a srli r7,r6,29 4d6f8: 880690fa slli r3,r17,3 4d6fc: 302490fa slli r18,r6,3 4d700: 10bf0044 addi r2,r2,-1023 4d704: 38e2b03a or r17,r7,r3 4d708: 000f883a mov r7,zero 4d70c: a087883a add r3,r20,r2 4d710: 010003c4 movi r4,15 4d714: 3d44b03a or r2,r7,r21 4d718: e5ccf03a xor r6,fp,r23 4d71c: 1a000044 addi r8,r3,1 4d720: 20809b36 bltu r4,r2,4d990 <__muldf3+0x348> 4d724: 100490ba slli r2,r2,2 4d728: 01000174 movhi r4,5 4d72c: 2135cf04 addi r4,r4,-10436 4d730: 1105883a add r2,r2,r4 4d734: 10800017 ldw r2,0(r2) 4d738: 1000683a jmp r2 4d73c: 0004d990 cmplti zero,zero,4966 4d740: 0004d79c xori zero,zero,4958 4d744: 0004d79c xori zero,zero,4958 4d748: 0004d798 cmpnei zero,zero,4958 4d74c: 0004d96c andhi zero,zero,4965 4d750: 0004d96c andhi zero,zero,4965 4d754: 0004d954 movui zero,4965 4d758: 0004d798 cmpnei zero,zero,4958 4d75c: 0004d96c andhi zero,zero,4965 4d760: 0004d954 movui zero,4965 4d764: 0004d96c andhi zero,zero,4965 4d768: 0004d798 cmpnei zero,zero,4958 4d76c: 0004d97c xorhi zero,zero,4965 4d770: 0004d97c xorhi zero,zero,4965 4d774: 0004d97c xorhi zero,zero,4965 4d778: 0004dcdc xori zero,zero,4979 4d77c: 2404b03a or r2,r4,r16 4d780: 1000711e bne r2,zero,4d948 <__muldf3+0x300> 4d784: 05400204 movi r21,8 4d788: 0021883a mov r16,zero 4d78c: 002d883a mov r22,zero 4d790: 01400084 movi r5,2 4d794: 003fcb06 br 4d6c4 <__alt_data_end+0xfffdb6c4> 4d798: 500d883a mov r6,r10 4d79c: 00800084 movi r2,2 4d7a0: 38805926 beq r7,r2,4d908 <__muldf3+0x2c0> 4d7a4: 008000c4 movi r2,3 4d7a8: 3881bb26 beq r7,r2,4de98 <__muldf3+0x850> 4d7ac: 00800044 movi r2,1 4d7b0: 3881961e bne r7,r2,4de0c <__muldf3+0x7c4> 4d7b4: 3027883a mov r19,r6 4d7b8: 0005883a mov r2,zero 4d7bc: 0021883a mov r16,zero 4d7c0: 002d883a mov r22,zero 4d7c4: 1004953a slli r2,r2,20 4d7c8: 98c03fcc andi r3,r19,255 4d7cc: 04400434 movhi r17,16 4d7d0: 8c7fffc4 addi r17,r17,-1 4d7d4: 180697fa slli r3,r3,31 4d7d8: 8460703a and r16,r16,r17 4d7dc: 80a0b03a or r16,r16,r2 4d7e0: 80c6b03a or r3,r16,r3 4d7e4: b005883a mov r2,r22 4d7e8: dfc01117 ldw ra,68(sp) 4d7ec: df001017 ldw fp,64(sp) 4d7f0: ddc00f17 ldw r23,60(sp) 4d7f4: dd800e17 ldw r22,56(sp) 4d7f8: dd400d17 ldw r21,52(sp) 4d7fc: dd000c17 ldw r20,48(sp) 4d800: dcc00b17 ldw r19,44(sp) 4d804: dc800a17 ldw r18,40(sp) 4d808: dc400917 ldw r17,36(sp) 4d80c: dc000817 ldw r16,32(sp) 4d810: dec01204 addi sp,sp,72 4d814: f800283a ret 4d818: 2404b03a or r2,r4,r16 4d81c: 202b883a mov r21,r4 4d820: 10004426 beq r2,zero,4d934 <__muldf3+0x2ec> 4d824: 80015126 beq r16,zero,4dd6c <__muldf3+0x724> 4d828: 8009883a mov r4,r16 4d82c: d9800715 stw r6,28(sp) 4d830: d9c00215 stw r7,8(sp) 4d834: da400415 stw r9,16(sp) 4d838: 0041efc0 call 41efc <__clzsi2> 4d83c: d9800717 ldw r6,28(sp) 4d840: d9c00217 ldw r7,8(sp) 4d844: da400417 ldw r9,16(sp) 4d848: 113ffd44 addi r4,r2,-11 4d84c: 00c00704 movi r3,28 4d850: 19014216 blt r3,r4,4dd5c <__muldf3+0x714> 4d854: 00c00744 movi r3,29 4d858: 15bffe04 addi r22,r2,-8 4d85c: 1907c83a sub r3,r3,r4 4d860: 85a0983a sll r16,r16,r22 4d864: a8c6d83a srl r3,r21,r3 4d868: adac983a sll r22,r21,r22 4d86c: 1c20b03a or r16,r3,r16 4d870: 1080fcc4 addi r2,r2,1011 4d874: 00a9c83a sub r20,zero,r2 4d878: 002b883a mov r21,zero 4d87c: 000b883a mov r5,zero 4d880: 003f9006 br 4d6c4 <__alt_data_end+0xfffdb6c4> 4d884: 3446b03a or r3,r6,r17 4d888: 1800281e bne r3,zero,4d92c <__muldf3+0x2e4> 4d88c: 0023883a mov r17,zero 4d890: 0025883a mov r18,zero 4d894: 01c00084 movi r7,2 4d898: 003f9c06 br 4d70c <__alt_data_end+0xfffdb70c> 4d89c: 3446b03a or r3,r6,r17 4d8a0: 18001e26 beq r3,zero,4d91c <__muldf3+0x2d4> 4d8a4: 88012126 beq r17,zero,4dd2c <__muldf3+0x6e4> 4d8a8: 8809883a mov r4,r17 4d8ac: d9400215 stw r5,8(sp) 4d8b0: d9800715 stw r6,28(sp) 4d8b4: da400415 stw r9,16(sp) 4d8b8: da800315 stw r10,12(sp) 4d8bc: 0041efc0 call 41efc <__clzsi2> 4d8c0: d9400217 ldw r5,8(sp) 4d8c4: d9800717 ldw r6,28(sp) 4d8c8: da400417 ldw r9,16(sp) 4d8cc: da800317 ldw r10,12(sp) 4d8d0: 113ffd44 addi r4,r2,-11 4d8d4: 00c00704 movi r3,28 4d8d8: 19011016 blt r3,r4,4dd1c <__muldf3+0x6d4> 4d8dc: 00c00744 movi r3,29 4d8e0: 14bffe04 addi r18,r2,-8 4d8e4: 1907c83a sub r3,r3,r4 4d8e8: 8ca2983a sll r17,r17,r18 4d8ec: 30c6d83a srl r3,r6,r3 4d8f0: 34a4983a sll r18,r6,r18 4d8f4: 1c62b03a or r17,r3,r17 4d8f8: 1080fcc4 addi r2,r2,1011 4d8fc: 0085c83a sub r2,zero,r2 4d900: 000f883a mov r7,zero 4d904: 003f8106 br 4d70c <__alt_data_end+0xfffdb70c> 4d908: 3027883a mov r19,r6 4d90c: 0081ffc4 movi r2,2047 4d910: 0021883a mov r16,zero 4d914: 002d883a mov r22,zero 4d918: 003faa06 br 4d7c4 <__alt_data_end+0xfffdb7c4> 4d91c: 0023883a mov r17,zero 4d920: 0025883a mov r18,zero 4d924: 01c00044 movi r7,1 4d928: 003f7806 br 4d70c <__alt_data_end+0xfffdb70c> 4d92c: 01c000c4 movi r7,3 4d930: 003f7606 br 4d70c <__alt_data_end+0xfffdb70c> 4d934: 05400104 movi r21,4 4d938: 0021883a mov r16,zero 4d93c: 002d883a mov r22,zero 4d940: 01400044 movi r5,1 4d944: 003f5f06 br 4d6c4 <__alt_data_end+0xfffdb6c4> 4d948: 05400304 movi r21,12 4d94c: 014000c4 movi r5,3 4d950: 003f5c06 br 4d6c4 <__alt_data_end+0xfffdb6c4> 4d954: 04000434 movhi r16,16 4d958: 0027883a mov r19,zero 4d95c: 843fffc4 addi r16,r16,-1 4d960: 05bfffc4 movi r22,-1 4d964: 0081ffc4 movi r2,2047 4d968: 003f9606 br 4d7c4 <__alt_data_end+0xfffdb7c4> 4d96c: 8023883a mov r17,r16 4d970: b025883a mov r18,r22 4d974: 280f883a mov r7,r5 4d978: 003f8806 br 4d79c <__alt_data_end+0xfffdb79c> 4d97c: 8023883a mov r17,r16 4d980: b025883a mov r18,r22 4d984: 480d883a mov r6,r9 4d988: 280f883a mov r7,r5 4d98c: 003f8306 br 4d79c <__alt_data_end+0xfffdb79c> 4d990: b026d43a srli r19,r22,16 4d994: 902ed43a srli r23,r18,16 4d998: b5bfffcc andi r22,r22,65535 4d99c: 94bfffcc andi r18,r18,65535 4d9a0: b00b883a mov r5,r22 4d9a4: 9009883a mov r4,r18 4d9a8: d8c00515 stw r3,20(sp) 4d9ac: d9800715 stw r6,28(sp) 4d9b0: da000615 stw r8,24(sp) 4d9b4: 004c9f80 call 4c9f8 <__mulsi3> 4d9b8: 980b883a mov r5,r19 4d9bc: 9009883a mov r4,r18 4d9c0: 1029883a mov r20,r2 4d9c4: 004c9f80 call 4c9f8 <__mulsi3> 4d9c8: b80b883a mov r5,r23 4d9cc: 9809883a mov r4,r19 4d9d0: 102b883a mov r21,r2 4d9d4: 004c9f80 call 4c9f8 <__mulsi3> 4d9d8: b809883a mov r4,r23 4d9dc: b00b883a mov r5,r22 4d9e0: 1039883a mov fp,r2 4d9e4: 004c9f80 call 4c9f8 <__mulsi3> 4d9e8: a008d43a srli r4,r20,16 4d9ec: 1545883a add r2,r2,r21 4d9f0: d8c00517 ldw r3,20(sp) 4d9f4: 2085883a add r2,r4,r2 4d9f8: d9800717 ldw r6,28(sp) 4d9fc: da000617 ldw r8,24(sp) 4da00: 1540022e bgeu r2,r21,4da0c <__muldf3+0x3c4> 4da04: 01000074 movhi r4,1 4da08: e139883a add fp,fp,r4 4da0c: 100e943a slli r7,r2,16 4da10: 1004d43a srli r2,r2,16 4da14: 882ad43a srli r21,r17,16 4da18: a53fffcc andi r20,r20,65535 4da1c: 8c7fffcc andi r17,r17,65535 4da20: 3d29883a add r20,r7,r20 4da24: b00b883a mov r5,r22 4da28: 8809883a mov r4,r17 4da2c: d8c00515 stw r3,20(sp) 4da30: d9800715 stw r6,28(sp) 4da34: da000615 stw r8,24(sp) 4da38: dd000115 stw r20,4(sp) 4da3c: d8800015 stw r2,0(sp) 4da40: 004c9f80 call 4c9f8 <__mulsi3> 4da44: 980b883a mov r5,r19 4da48: 8809883a mov r4,r17 4da4c: d8800215 stw r2,8(sp) 4da50: 004c9f80 call 4c9f8 <__mulsi3> 4da54: 9809883a mov r4,r19 4da58: a80b883a mov r5,r21 4da5c: 1029883a mov r20,r2 4da60: 004c9f80 call 4c9f8 <__mulsi3> 4da64: b00b883a mov r5,r22 4da68: a809883a mov r4,r21 4da6c: d8800415 stw r2,16(sp) 4da70: 004c9f80 call 4c9f8 <__mulsi3> 4da74: d9c00217 ldw r7,8(sp) 4da78: 1505883a add r2,r2,r20 4da7c: d8c00517 ldw r3,20(sp) 4da80: 3826d43a srli r19,r7,16 4da84: d9800717 ldw r6,28(sp) 4da88: da000617 ldw r8,24(sp) 4da8c: 9885883a add r2,r19,r2 4da90: da400417 ldw r9,16(sp) 4da94: 1500022e bgeu r2,r20,4daa0 <__muldf3+0x458> 4da98: 01000074 movhi r4,1 4da9c: 4913883a add r9,r9,r4 4daa0: 1028d43a srli r20,r2,16 4daa4: 1004943a slli r2,r2,16 4daa8: 802cd43a srli r22,r16,16 4daac: 843fffcc andi r16,r16,65535 4dab0: 3cffffcc andi r19,r7,65535 4dab4: 9009883a mov r4,r18 4dab8: 800b883a mov r5,r16 4dabc: a269883a add r20,r20,r9 4dac0: d8c00515 stw r3,20(sp) 4dac4: d9800715 stw r6,28(sp) 4dac8: da000615 stw r8,24(sp) 4dacc: 14e7883a add r19,r2,r19 4dad0: 004c9f80 call 4c9f8 <__mulsi3> 4dad4: 9009883a mov r4,r18 4dad8: b00b883a mov r5,r22 4dadc: d8800315 stw r2,12(sp) 4dae0: 004c9f80 call 4c9f8 <__mulsi3> 4dae4: b809883a mov r4,r23 4dae8: b00b883a mov r5,r22 4daec: d8800215 stw r2,8(sp) 4daf0: 004c9f80 call 4c9f8 <__mulsi3> 4daf4: b80b883a mov r5,r23 4daf8: 8009883a mov r4,r16 4dafc: d8800415 stw r2,16(sp) 4db00: 004c9f80 call 4c9f8 <__mulsi3> 4db04: da800317 ldw r10,12(sp) 4db08: d9c00217 ldw r7,8(sp) 4db0c: d9000017 ldw r4,0(sp) 4db10: 502ed43a srli r23,r10,16 4db14: 11c5883a add r2,r2,r7 4db18: 24e5883a add r18,r4,r19 4db1c: b885883a add r2,r23,r2 4db20: d8c00517 ldw r3,20(sp) 4db24: d9800717 ldw r6,28(sp) 4db28: da000617 ldw r8,24(sp) 4db2c: da400417 ldw r9,16(sp) 4db30: 11c0022e bgeu r2,r7,4db3c <__muldf3+0x4f4> 4db34: 01000074 movhi r4,1 4db38: 4913883a add r9,r9,r4 4db3c: 100ed43a srli r7,r2,16 4db40: 1004943a slli r2,r2,16 4db44: 55ffffcc andi r23,r10,65535 4db48: 3a53883a add r9,r7,r9 4db4c: 8809883a mov r4,r17 4db50: 800b883a mov r5,r16 4db54: d8c00515 stw r3,20(sp) 4db58: d9800715 stw r6,28(sp) 4db5c: da000615 stw r8,24(sp) 4db60: da400415 stw r9,16(sp) 4db64: 15ef883a add r23,r2,r23 4db68: 004c9f80 call 4c9f8 <__mulsi3> 4db6c: 8809883a mov r4,r17 4db70: b00b883a mov r5,r22 4db74: d8800215 stw r2,8(sp) 4db78: 004c9f80 call 4c9f8 <__mulsi3> 4db7c: b00b883a mov r5,r22 4db80: a809883a mov r4,r21 4db84: d8800315 stw r2,12(sp) 4db88: 004c9f80 call 4c9f8 <__mulsi3> 4db8c: 8009883a mov r4,r16 4db90: a80b883a mov r5,r21 4db94: 1023883a mov r17,r2 4db98: 004c9f80 call 4c9f8 <__mulsi3> 4db9c: d9c00217 ldw r7,8(sp) 4dba0: da800317 ldw r10,12(sp) 4dba4: d8c00517 ldw r3,20(sp) 4dba8: 3808d43a srli r4,r7,16 4dbac: 1285883a add r2,r2,r10 4dbb0: d9800717 ldw r6,28(sp) 4dbb4: 2085883a add r2,r4,r2 4dbb8: da000617 ldw r8,24(sp) 4dbbc: da400417 ldw r9,16(sp) 4dbc0: 1280022e bgeu r2,r10,4dbcc <__muldf3+0x584> 4dbc4: 01000074 movhi r4,1 4dbc8: 8923883a add r17,r17,r4 4dbcc: 1008943a slli r4,r2,16 4dbd0: 39ffffcc andi r7,r7,65535 4dbd4: e4b9883a add fp,fp,r18 4dbd8: 21cf883a add r7,r4,r7 4dbdc: e4e7803a cmpltu r19,fp,r19 4dbe0: 3d0f883a add r7,r7,r20 4dbe4: bf39883a add fp,r23,fp 4dbe8: 99c9883a add r4,r19,r7 4dbec: e5ef803a cmpltu r23,fp,r23 4dbf0: 490b883a add r5,r9,r4 4dbf4: 1004d43a srli r2,r2,16 4dbf8: b965883a add r18,r23,r5 4dbfc: 24c9803a cmpltu r4,r4,r19 4dc00: 3d29803a cmpltu r20,r7,r20 4dc04: a128b03a or r20,r20,r4 4dc08: 95ef803a cmpltu r23,r18,r23 4dc0c: 2a53803a cmpltu r9,r5,r9 4dc10: a0a9883a add r20,r20,r2 4dc14: 4deeb03a or r23,r9,r23 4dc18: a5ef883a add r23,r20,r23 4dc1c: bc63883a add r17,r23,r17 4dc20: e004927a slli r2,fp,9 4dc24: d9000117 ldw r4,4(sp) 4dc28: 882e927a slli r23,r17,9 4dc2c: 9022d5fa srli r17,r18,23 4dc30: e038d5fa srli fp,fp,23 4dc34: 1104b03a or r2,r2,r4 4dc38: 9024927a slli r18,r18,9 4dc3c: 1004c03a cmpne r2,r2,zero 4dc40: bc62b03a or r17,r23,r17 4dc44: 1738b03a or fp,r2,fp 4dc48: 8880402c andhi r2,r17,256 4dc4c: e4a4b03a or r18,fp,r18 4dc50: 10000726 beq r2,zero,4dc70 <__muldf3+0x628> 4dc54: 9006d07a srli r3,r18,1 4dc58: 880497fa slli r2,r17,31 4dc5c: 9480004c andi r18,r18,1 4dc60: 8822d07a srli r17,r17,1 4dc64: 1ca4b03a or r18,r3,r18 4dc68: 14a4b03a or r18,r2,r18 4dc6c: 4007883a mov r3,r8 4dc70: 1880ffc4 addi r2,r3,1023 4dc74: 0080460e bge zero,r2,4dd90 <__muldf3+0x748> 4dc78: 910001cc andi r4,r18,7 4dc7c: 20000726 beq r4,zero,4dc9c <__muldf3+0x654> 4dc80: 910003cc andi r4,r18,15 4dc84: 01400104 movi r5,4 4dc88: 21400426 beq r4,r5,4dc9c <__muldf3+0x654> 4dc8c: 9149883a add r4,r18,r5 4dc90: 24a5803a cmpltu r18,r4,r18 4dc94: 8ca3883a add r17,r17,r18 4dc98: 2025883a mov r18,r4 4dc9c: 8900402c andhi r4,r17,256 4dca0: 20000426 beq r4,zero,4dcb4 <__muldf3+0x66c> 4dca4: 18810004 addi r2,r3,1024 4dca8: 00ffc034 movhi r3,65280 4dcac: 18ffffc4 addi r3,r3,-1 4dcb0: 88e2703a and r17,r17,r3 4dcb4: 00c1ff84 movi r3,2046 4dcb8: 18bf1316 blt r3,r2,4d908 <__alt_data_end+0xfffdb908> 4dcbc: 882c977a slli r22,r17,29 4dcc0: 9024d0fa srli r18,r18,3 4dcc4: 8822927a slli r17,r17,9 4dcc8: 1081ffcc andi r2,r2,2047 4dccc: b4acb03a or r22,r22,r18 4dcd0: 8820d33a srli r16,r17,12 4dcd4: 3027883a mov r19,r6 4dcd8: 003eba06 br 4d7c4 <__alt_data_end+0xfffdb7c4> 4dcdc: 8080022c andhi r2,r16,8 4dce0: 10000926 beq r2,zero,4dd08 <__muldf3+0x6c0> 4dce4: 8880022c andhi r2,r17,8 4dce8: 1000071e bne r2,zero,4dd08 <__muldf3+0x6c0> 4dcec: 00800434 movhi r2,16 4dcf0: 8c000234 orhi r16,r17,8 4dcf4: 10bfffc4 addi r2,r2,-1 4dcf8: e027883a mov r19,fp 4dcfc: 80a0703a and r16,r16,r2 4dd00: 902d883a mov r22,r18 4dd04: 003f1706 br 4d964 <__alt_data_end+0xfffdb964> 4dd08: 00800434 movhi r2,16 4dd0c: 84000234 orhi r16,r16,8 4dd10: 10bfffc4 addi r2,r2,-1 4dd14: 80a0703a and r16,r16,r2 4dd18: 003f1206 br 4d964 <__alt_data_end+0xfffdb964> 4dd1c: 147ff604 addi r17,r2,-40 4dd20: 3462983a sll r17,r6,r17 4dd24: 0025883a mov r18,zero 4dd28: 003ef306 br 4d8f8 <__alt_data_end+0xfffdb8f8> 4dd2c: 3009883a mov r4,r6 4dd30: d9400215 stw r5,8(sp) 4dd34: d9800715 stw r6,28(sp) 4dd38: da400415 stw r9,16(sp) 4dd3c: da800315 stw r10,12(sp) 4dd40: 0041efc0 call 41efc <__clzsi2> 4dd44: 10800804 addi r2,r2,32 4dd48: da800317 ldw r10,12(sp) 4dd4c: da400417 ldw r9,16(sp) 4dd50: d9800717 ldw r6,28(sp) 4dd54: d9400217 ldw r5,8(sp) 4dd58: 003edd06 br 4d8d0 <__alt_data_end+0xfffdb8d0> 4dd5c: 143ff604 addi r16,r2,-40 4dd60: ac20983a sll r16,r21,r16 4dd64: 002d883a mov r22,zero 4dd68: 003ec106 br 4d870 <__alt_data_end+0xfffdb870> 4dd6c: d9800715 stw r6,28(sp) 4dd70: d9c00215 stw r7,8(sp) 4dd74: da400415 stw r9,16(sp) 4dd78: 0041efc0 call 41efc <__clzsi2> 4dd7c: 10800804 addi r2,r2,32 4dd80: da400417 ldw r9,16(sp) 4dd84: d9c00217 ldw r7,8(sp) 4dd88: d9800717 ldw r6,28(sp) 4dd8c: 003eae06 br 4d848 <__alt_data_end+0xfffdb848> 4dd90: 00c00044 movi r3,1 4dd94: 1887c83a sub r3,r3,r2 4dd98: 01000e04 movi r4,56 4dd9c: 20fe8516 blt r4,r3,4d7b4 <__alt_data_end+0xfffdb7b4> 4dda0: 010007c4 movi r4,31 4dda4: 20c01b16 blt r4,r3,4de14 <__muldf3+0x7cc> 4dda8: 00800804 movi r2,32 4ddac: 10c5c83a sub r2,r2,r3 4ddb0: 888a983a sll r5,r17,r2 4ddb4: 90c8d83a srl r4,r18,r3 4ddb8: 9084983a sll r2,r18,r2 4ddbc: 88e2d83a srl r17,r17,r3 4ddc0: 2906b03a or r3,r5,r4 4ddc4: 1004c03a cmpne r2,r2,zero 4ddc8: 1886b03a or r3,r3,r2 4ddcc: 188001cc andi r2,r3,7 4ddd0: 10000726 beq r2,zero,4ddf0 <__muldf3+0x7a8> 4ddd4: 188003cc andi r2,r3,15 4ddd8: 01000104 movi r4,4 4dddc: 11000426 beq r2,r4,4ddf0 <__muldf3+0x7a8> 4dde0: 1805883a mov r2,r3 4dde4: 10c00104 addi r3,r2,4 4dde8: 1885803a cmpltu r2,r3,r2 4ddec: 88a3883a add r17,r17,r2 4ddf0: 8880202c andhi r2,r17,128 4ddf4: 10001c26 beq r2,zero,4de68 <__muldf3+0x820> 4ddf8: 3027883a mov r19,r6 4ddfc: 00800044 movi r2,1 4de00: 0021883a mov r16,zero 4de04: 002d883a mov r22,zero 4de08: 003e6e06 br 4d7c4 <__alt_data_end+0xfffdb7c4> 4de0c: 4007883a mov r3,r8 4de10: 003f9706 br 4dc70 <__alt_data_end+0xfffdbc70> 4de14: 017ff844 movi r5,-31 4de18: 2885c83a sub r2,r5,r2 4de1c: 888ad83a srl r5,r17,r2 4de20: 00800804 movi r2,32 4de24: 18801a26 beq r3,r2,4de90 <__muldf3+0x848> 4de28: 01001004 movi r4,64 4de2c: 20c7c83a sub r3,r4,r3 4de30: 88e2983a sll r17,r17,r3 4de34: 8ca4b03a or r18,r17,r18 4de38: 9004c03a cmpne r2,r18,zero 4de3c: 2884b03a or r2,r5,r2 4de40: 144001cc andi r17,r2,7 4de44: 88000d1e bne r17,zero,4de7c <__muldf3+0x834> 4de48: 0021883a mov r16,zero 4de4c: 102cd0fa srli r22,r2,3 4de50: 3027883a mov r19,r6 4de54: 0005883a mov r2,zero 4de58: b46cb03a or r22,r22,r17 4de5c: 003e5906 br 4d7c4 <__alt_data_end+0xfffdb7c4> 4de60: 1007883a mov r3,r2 4de64: 0023883a mov r17,zero 4de68: 8820927a slli r16,r17,9 4de6c: 1805883a mov r2,r3 4de70: 8822977a slli r17,r17,29 4de74: 8020d33a srli r16,r16,12 4de78: 003ff406 br 4de4c <__alt_data_end+0xfffdbe4c> 4de7c: 10c003cc andi r3,r2,15 4de80: 01000104 movi r4,4 4de84: 193ff626 beq r3,r4,4de60 <__alt_data_end+0xfffdbe60> 4de88: 0023883a mov r17,zero 4de8c: 003fd506 br 4dde4 <__alt_data_end+0xfffdbde4> 4de90: 0023883a mov r17,zero 4de94: 003fe706 br 4de34 <__alt_data_end+0xfffdbe34> 4de98: 00800434 movhi r2,16 4de9c: 8c000234 orhi r16,r17,8 4dea0: 10bfffc4 addi r2,r2,-1 4dea4: 3027883a mov r19,r6 4dea8: 80a0703a and r16,r16,r2 4deac: 902d883a mov r22,r18 4deb0: 003eac06 br 4d964 <__alt_data_end+0xfffdb964> 0004deb4 <__subdf3>: 4deb4: 02000434 movhi r8,16 4deb8: 423fffc4 addi r8,r8,-1 4debc: defffb04 addi sp,sp,-20 4dec0: 2a14703a and r10,r5,r8 4dec4: 3812d53a srli r9,r7,20 4dec8: 3a10703a and r8,r7,r8 4decc: 2006d77a srli r3,r4,29 4ded0: 3004d77a srli r2,r6,29 4ded4: dc000015 stw r16,0(sp) 4ded8: 501490fa slli r10,r10,3 4dedc: 2820d53a srli r16,r5,20 4dee0: 401090fa slli r8,r8,3 4dee4: dc800215 stw r18,8(sp) 4dee8: dc400115 stw r17,4(sp) 4deec: dfc00415 stw ra,16(sp) 4def0: 202290fa slli r17,r4,3 4def4: dcc00315 stw r19,12(sp) 4def8: 4a41ffcc andi r9,r9,2047 4defc: 0101ffc4 movi r4,2047 4df00: 2824d7fa srli r18,r5,31 4df04: 8401ffcc andi r16,r16,2047 4df08: 50c6b03a or r3,r10,r3 4df0c: 380ed7fa srli r7,r7,31 4df10: 408ab03a or r5,r8,r2 4df14: 300c90fa slli r6,r6,3 4df18: 49009626 beq r9,r4,4e174 <__subdf3+0x2c0> 4df1c: 39c0005c xori r7,r7,1 4df20: 8245c83a sub r2,r16,r9 4df24: 3c807426 beq r7,r18,4e0f8 <__subdf3+0x244> 4df28: 0080af0e bge zero,r2,4e1e8 <__subdf3+0x334> 4df2c: 48002a1e bne r9,zero,4dfd8 <__subdf3+0x124> 4df30: 2988b03a or r4,r5,r6 4df34: 20009a1e bne r4,zero,4e1a0 <__subdf3+0x2ec> 4df38: 888001cc andi r2,r17,7 4df3c: 10000726 beq r2,zero,4df5c <__subdf3+0xa8> 4df40: 888003cc andi r2,r17,15 4df44: 01000104 movi r4,4 4df48: 11000426 beq r2,r4,4df5c <__subdf3+0xa8> 4df4c: 890b883a add r5,r17,r4 4df50: 2c63803a cmpltu r17,r5,r17 4df54: 1c47883a add r3,r3,r17 4df58: 2823883a mov r17,r5 4df5c: 1880202c andhi r2,r3,128 4df60: 10005926 beq r2,zero,4e0c8 <__subdf3+0x214> 4df64: 84000044 addi r16,r16,1 4df68: 0081ffc4 movi r2,2047 4df6c: 8080be26 beq r16,r2,4e268 <__subdf3+0x3b4> 4df70: 017fe034 movhi r5,65408 4df74: 297fffc4 addi r5,r5,-1 4df78: 1946703a and r3,r3,r5 4df7c: 1804977a slli r2,r3,29 4df80: 1806927a slli r3,r3,9 4df84: 8822d0fa srli r17,r17,3 4df88: 8401ffcc andi r16,r16,2047 4df8c: 180ad33a srli r5,r3,12 4df90: 9100004c andi r4,r18,1 4df94: 1444b03a or r2,r2,r17 4df98: 80c1ffcc andi r3,r16,2047 4df9c: 1820953a slli r16,r3,20 4dfa0: 20c03fcc andi r3,r4,255 4dfa4: 180897fa slli r4,r3,31 4dfa8: 00c00434 movhi r3,16 4dfac: 18ffffc4 addi r3,r3,-1 4dfb0: 28c6703a and r3,r5,r3 4dfb4: 1c06b03a or r3,r3,r16 4dfb8: 1906b03a or r3,r3,r4 4dfbc: dfc00417 ldw ra,16(sp) 4dfc0: dcc00317 ldw r19,12(sp) 4dfc4: dc800217 ldw r18,8(sp) 4dfc8: dc400117 ldw r17,4(sp) 4dfcc: dc000017 ldw r16,0(sp) 4dfd0: dec00504 addi sp,sp,20 4dfd4: f800283a ret 4dfd8: 0101ffc4 movi r4,2047 4dfdc: 813fd626 beq r16,r4,4df38 <__alt_data_end+0xfffdbf38> 4dfe0: 29402034 orhi r5,r5,128 4dfe4: 01000e04 movi r4,56 4dfe8: 2080a316 blt r4,r2,4e278 <__subdf3+0x3c4> 4dfec: 010007c4 movi r4,31 4dff0: 2080c616 blt r4,r2,4e30c <__subdf3+0x458> 4dff4: 01000804 movi r4,32 4dff8: 2089c83a sub r4,r4,r2 4dffc: 2910983a sll r8,r5,r4 4e000: 308ed83a srl r7,r6,r2 4e004: 3108983a sll r4,r6,r4 4e008: 2884d83a srl r2,r5,r2 4e00c: 41ccb03a or r6,r8,r7 4e010: 2008c03a cmpne r4,r4,zero 4e014: 310cb03a or r6,r6,r4 4e018: 898dc83a sub r6,r17,r6 4e01c: 89a3803a cmpltu r17,r17,r6 4e020: 1887c83a sub r3,r3,r2 4e024: 1c47c83a sub r3,r3,r17 4e028: 3023883a mov r17,r6 4e02c: 1880202c andhi r2,r3,128 4e030: 10002326 beq r2,zero,4e0c0 <__subdf3+0x20c> 4e034: 04c02034 movhi r19,128 4e038: 9cffffc4 addi r19,r19,-1 4e03c: 1ce6703a and r19,r3,r19 4e040: 98007a26 beq r19,zero,4e22c <__subdf3+0x378> 4e044: 9809883a mov r4,r19 4e048: 0041efc0 call 41efc <__clzsi2> 4e04c: 113ffe04 addi r4,r2,-8 4e050: 00c007c4 movi r3,31 4e054: 19007b16 blt r3,r4,4e244 <__subdf3+0x390> 4e058: 00800804 movi r2,32 4e05c: 1105c83a sub r2,r2,r4 4e060: 8884d83a srl r2,r17,r2 4e064: 9906983a sll r3,r19,r4 4e068: 8922983a sll r17,r17,r4 4e06c: 10c4b03a or r2,r2,r3 4e070: 24007816 blt r4,r16,4e254 <__subdf3+0x3a0> 4e074: 2421c83a sub r16,r4,r16 4e078: 80c00044 addi r3,r16,1 4e07c: 010007c4 movi r4,31 4e080: 20c09516 blt r4,r3,4e2d8 <__subdf3+0x424> 4e084: 01400804 movi r5,32 4e088: 28cbc83a sub r5,r5,r3 4e08c: 88c8d83a srl r4,r17,r3 4e090: 8962983a sll r17,r17,r5 4e094: 114a983a sll r5,r2,r5 4e098: 10c6d83a srl r3,r2,r3 4e09c: 8804c03a cmpne r2,r17,zero 4e0a0: 290ab03a or r5,r5,r4 4e0a4: 28a2b03a or r17,r5,r2 4e0a8: 0021883a mov r16,zero 4e0ac: 003fa206 br 4df38 <__alt_data_end+0xfffdbf38> 4e0b0: 2090b03a or r8,r4,r2 4e0b4: 40018e26 beq r8,zero,4e6f0 <__subdf3+0x83c> 4e0b8: 1007883a mov r3,r2 4e0bc: 2023883a mov r17,r4 4e0c0: 888001cc andi r2,r17,7 4e0c4: 103f9e1e bne r2,zero,4df40 <__alt_data_end+0xfffdbf40> 4e0c8: 1804977a slli r2,r3,29 4e0cc: 8822d0fa srli r17,r17,3 4e0d0: 1810d0fa srli r8,r3,3 4e0d4: 9100004c andi r4,r18,1 4e0d8: 1444b03a or r2,r2,r17 4e0dc: 00c1ffc4 movi r3,2047 4e0e0: 80c02826 beq r16,r3,4e184 <__subdf3+0x2d0> 4e0e4: 01400434 movhi r5,16 4e0e8: 297fffc4 addi r5,r5,-1 4e0ec: 80e0703a and r16,r16,r3 4e0f0: 414a703a and r5,r8,r5 4e0f4: 003fa806 br 4df98 <__alt_data_end+0xfffdbf98> 4e0f8: 0080630e bge zero,r2,4e288 <__subdf3+0x3d4> 4e0fc: 48003026 beq r9,zero,4e1c0 <__subdf3+0x30c> 4e100: 0101ffc4 movi r4,2047 4e104: 813f8c26 beq r16,r4,4df38 <__alt_data_end+0xfffdbf38> 4e108: 29402034 orhi r5,r5,128 4e10c: 01000e04 movi r4,56 4e110: 2080a90e bge r4,r2,4e3b8 <__subdf3+0x504> 4e114: 298cb03a or r6,r5,r6 4e118: 3012c03a cmpne r9,r6,zero 4e11c: 0005883a mov r2,zero 4e120: 4c53883a add r9,r9,r17 4e124: 4c63803a cmpltu r17,r9,r17 4e128: 10c7883a add r3,r2,r3 4e12c: 88c7883a add r3,r17,r3 4e130: 4823883a mov r17,r9 4e134: 1880202c andhi r2,r3,128 4e138: 1000d026 beq r2,zero,4e47c <__subdf3+0x5c8> 4e13c: 84000044 addi r16,r16,1 4e140: 0081ffc4 movi r2,2047 4e144: 8080fe26 beq r16,r2,4e540 <__subdf3+0x68c> 4e148: 00bfe034 movhi r2,65408 4e14c: 10bfffc4 addi r2,r2,-1 4e150: 1886703a and r3,r3,r2 4e154: 880ad07a srli r5,r17,1 4e158: 180497fa slli r2,r3,31 4e15c: 8900004c andi r4,r17,1 4e160: 2922b03a or r17,r5,r4 4e164: 1806d07a srli r3,r3,1 4e168: 1462b03a or r17,r2,r17 4e16c: 3825883a mov r18,r7 4e170: 003f7106 br 4df38 <__alt_data_end+0xfffdbf38> 4e174: 2984b03a or r2,r5,r6 4e178: 103f6826 beq r2,zero,4df1c <__alt_data_end+0xfffdbf1c> 4e17c: 39c03fcc andi r7,r7,255 4e180: 003f6706 br 4df20 <__alt_data_end+0xfffdbf20> 4e184: 4086b03a or r3,r8,r2 4e188: 18015226 beq r3,zero,4e6d4 <__subdf3+0x820> 4e18c: 00c00434 movhi r3,16 4e190: 41400234 orhi r5,r8,8 4e194: 18ffffc4 addi r3,r3,-1 4e198: 28ca703a and r5,r5,r3 4e19c: 003f7e06 br 4df98 <__alt_data_end+0xfffdbf98> 4e1a0: 10bfffc4 addi r2,r2,-1 4e1a4: 1000491e bne r2,zero,4e2cc <__subdf3+0x418> 4e1a8: 898fc83a sub r7,r17,r6 4e1ac: 89e3803a cmpltu r17,r17,r7 4e1b0: 1947c83a sub r3,r3,r5 4e1b4: 1c47c83a sub r3,r3,r17 4e1b8: 3823883a mov r17,r7 4e1bc: 003f9b06 br 4e02c <__alt_data_end+0xfffdc02c> 4e1c0: 2988b03a or r4,r5,r6 4e1c4: 203f5c26 beq r4,zero,4df38 <__alt_data_end+0xfffdbf38> 4e1c8: 10bfffc4 addi r2,r2,-1 4e1cc: 1000931e bne r2,zero,4e41c <__subdf3+0x568> 4e1d0: 898d883a add r6,r17,r6 4e1d4: 3463803a cmpltu r17,r6,r17 4e1d8: 1947883a add r3,r3,r5 4e1dc: 88c7883a add r3,r17,r3 4e1e0: 3023883a mov r17,r6 4e1e4: 003fd306 br 4e134 <__alt_data_end+0xfffdc134> 4e1e8: 1000541e bne r2,zero,4e33c <__subdf3+0x488> 4e1ec: 80800044 addi r2,r16,1 4e1f0: 1081ffcc andi r2,r2,2047 4e1f4: 01000044 movi r4,1 4e1f8: 2080a20e bge r4,r2,4e484 <__subdf3+0x5d0> 4e1fc: 8989c83a sub r4,r17,r6 4e200: 8905803a cmpltu r2,r17,r4 4e204: 1967c83a sub r19,r3,r5 4e208: 98a7c83a sub r19,r19,r2 4e20c: 9880202c andhi r2,r19,128 4e210: 10006326 beq r2,zero,4e3a0 <__subdf3+0x4ec> 4e214: 3463c83a sub r17,r6,r17 4e218: 28c7c83a sub r3,r5,r3 4e21c: 344d803a cmpltu r6,r6,r17 4e220: 19a7c83a sub r19,r3,r6 4e224: 3825883a mov r18,r7 4e228: 983f861e bne r19,zero,4e044 <__alt_data_end+0xfffdc044> 4e22c: 8809883a mov r4,r17 4e230: 0041efc0 call 41efc <__clzsi2> 4e234: 10800804 addi r2,r2,32 4e238: 113ffe04 addi r4,r2,-8 4e23c: 00c007c4 movi r3,31 4e240: 193f850e bge r3,r4,4e058 <__alt_data_end+0xfffdc058> 4e244: 10bff604 addi r2,r2,-40 4e248: 8884983a sll r2,r17,r2 4e24c: 0023883a mov r17,zero 4e250: 243f880e bge r4,r16,4e074 <__alt_data_end+0xfffdc074> 4e254: 00ffe034 movhi r3,65408 4e258: 18ffffc4 addi r3,r3,-1 4e25c: 8121c83a sub r16,r16,r4 4e260: 10c6703a and r3,r2,r3 4e264: 003f3406 br 4df38 <__alt_data_end+0xfffdbf38> 4e268: 9100004c andi r4,r18,1 4e26c: 000b883a mov r5,zero 4e270: 0005883a mov r2,zero 4e274: 003f4806 br 4df98 <__alt_data_end+0xfffdbf98> 4e278: 298cb03a or r6,r5,r6 4e27c: 300cc03a cmpne r6,r6,zero 4e280: 0005883a mov r2,zero 4e284: 003f6406 br 4e018 <__alt_data_end+0xfffdc018> 4e288: 10009a1e bne r2,zero,4e4f4 <__subdf3+0x640> 4e28c: 82400044 addi r9,r16,1 4e290: 4881ffcc andi r2,r9,2047 4e294: 02800044 movi r10,1 4e298: 5080670e bge r10,r2,4e438 <__subdf3+0x584> 4e29c: 0081ffc4 movi r2,2047 4e2a0: 4880af26 beq r9,r2,4e560 <__subdf3+0x6ac> 4e2a4: 898d883a add r6,r17,r6 4e2a8: 1945883a add r2,r3,r5 4e2ac: 3447803a cmpltu r3,r6,r17 4e2b0: 1887883a add r3,r3,r2 4e2b4: 182297fa slli r17,r3,31 4e2b8: 300cd07a srli r6,r6,1 4e2bc: 1806d07a srli r3,r3,1 4e2c0: 4821883a mov r16,r9 4e2c4: 89a2b03a or r17,r17,r6 4e2c8: 003f1b06 br 4df38 <__alt_data_end+0xfffdbf38> 4e2cc: 0101ffc4 movi r4,2047 4e2d0: 813f441e bne r16,r4,4dfe4 <__alt_data_end+0xfffdbfe4> 4e2d4: 003f1806 br 4df38 <__alt_data_end+0xfffdbf38> 4e2d8: 843ff844 addi r16,r16,-31 4e2dc: 01400804 movi r5,32 4e2e0: 1408d83a srl r4,r2,r16 4e2e4: 19405026 beq r3,r5,4e428 <__subdf3+0x574> 4e2e8: 01401004 movi r5,64 4e2ec: 28c7c83a sub r3,r5,r3 4e2f0: 10c4983a sll r2,r2,r3 4e2f4: 88a2b03a or r17,r17,r2 4e2f8: 8822c03a cmpne r17,r17,zero 4e2fc: 2462b03a or r17,r4,r17 4e300: 0007883a mov r3,zero 4e304: 0021883a mov r16,zero 4e308: 003f6d06 br 4e0c0 <__alt_data_end+0xfffdc0c0> 4e30c: 11fff804 addi r7,r2,-32 4e310: 01000804 movi r4,32 4e314: 29ced83a srl r7,r5,r7 4e318: 11004526 beq r2,r4,4e430 <__subdf3+0x57c> 4e31c: 01001004 movi r4,64 4e320: 2089c83a sub r4,r4,r2 4e324: 2904983a sll r2,r5,r4 4e328: 118cb03a or r6,r2,r6 4e32c: 300cc03a cmpne r6,r6,zero 4e330: 398cb03a or r6,r7,r6 4e334: 0005883a mov r2,zero 4e338: 003f3706 br 4e018 <__alt_data_end+0xfffdc018> 4e33c: 80002a26 beq r16,zero,4e3e8 <__subdf3+0x534> 4e340: 0101ffc4 movi r4,2047 4e344: 49006626 beq r9,r4,4e4e0 <__subdf3+0x62c> 4e348: 0085c83a sub r2,zero,r2 4e34c: 18c02034 orhi r3,r3,128 4e350: 01000e04 movi r4,56 4e354: 20807e16 blt r4,r2,4e550 <__subdf3+0x69c> 4e358: 010007c4 movi r4,31 4e35c: 2080e716 blt r4,r2,4e6fc <__subdf3+0x848> 4e360: 01000804 movi r4,32 4e364: 2089c83a sub r4,r4,r2 4e368: 1914983a sll r10,r3,r4 4e36c: 8890d83a srl r8,r17,r2 4e370: 8908983a sll r4,r17,r4 4e374: 1884d83a srl r2,r3,r2 4e378: 5222b03a or r17,r10,r8 4e37c: 2006c03a cmpne r3,r4,zero 4e380: 88e2b03a or r17,r17,r3 4e384: 3463c83a sub r17,r6,r17 4e388: 2885c83a sub r2,r5,r2 4e38c: 344d803a cmpltu r6,r6,r17 4e390: 1187c83a sub r3,r2,r6 4e394: 4821883a mov r16,r9 4e398: 3825883a mov r18,r7 4e39c: 003f2306 br 4e02c <__alt_data_end+0xfffdc02c> 4e3a0: 24d0b03a or r8,r4,r19 4e3a4: 40001b1e bne r8,zero,4e414 <__subdf3+0x560> 4e3a8: 0005883a mov r2,zero 4e3ac: 0009883a mov r4,zero 4e3b0: 0021883a mov r16,zero 4e3b4: 003f4906 br 4e0dc <__alt_data_end+0xfffdc0dc> 4e3b8: 010007c4 movi r4,31 4e3bc: 20803a16 blt r4,r2,4e4a8 <__subdf3+0x5f4> 4e3c0: 01000804 movi r4,32 4e3c4: 2089c83a sub r4,r4,r2 4e3c8: 2912983a sll r9,r5,r4 4e3cc: 3090d83a srl r8,r6,r2 4e3d0: 3108983a sll r4,r6,r4 4e3d4: 2884d83a srl r2,r5,r2 4e3d8: 4a12b03a or r9,r9,r8 4e3dc: 2008c03a cmpne r4,r4,zero 4e3e0: 4912b03a or r9,r9,r4 4e3e4: 003f4e06 br 4e120 <__alt_data_end+0xfffdc120> 4e3e8: 1c48b03a or r4,r3,r17 4e3ec: 20003c26 beq r4,zero,4e4e0 <__subdf3+0x62c> 4e3f0: 0084303a nor r2,zero,r2 4e3f4: 1000381e bne r2,zero,4e4d8 <__subdf3+0x624> 4e3f8: 3463c83a sub r17,r6,r17 4e3fc: 28c5c83a sub r2,r5,r3 4e400: 344d803a cmpltu r6,r6,r17 4e404: 1187c83a sub r3,r2,r6 4e408: 4821883a mov r16,r9 4e40c: 3825883a mov r18,r7 4e410: 003f0606 br 4e02c <__alt_data_end+0xfffdc02c> 4e414: 2023883a mov r17,r4 4e418: 003f0906 br 4e040 <__alt_data_end+0xfffdc040> 4e41c: 0101ffc4 movi r4,2047 4e420: 813f3a1e bne r16,r4,4e10c <__alt_data_end+0xfffdc10c> 4e424: 003ec406 br 4df38 <__alt_data_end+0xfffdbf38> 4e428: 0005883a mov r2,zero 4e42c: 003fb106 br 4e2f4 <__alt_data_end+0xfffdc2f4> 4e430: 0005883a mov r2,zero 4e434: 003fbc06 br 4e328 <__alt_data_end+0xfffdc328> 4e438: 1c44b03a or r2,r3,r17 4e43c: 80008e1e bne r16,zero,4e678 <__subdf3+0x7c4> 4e440: 1000c826 beq r2,zero,4e764 <__subdf3+0x8b0> 4e444: 2984b03a or r2,r5,r6 4e448: 103ebb26 beq r2,zero,4df38 <__alt_data_end+0xfffdbf38> 4e44c: 8989883a add r4,r17,r6 4e450: 1945883a add r2,r3,r5 4e454: 2447803a cmpltu r3,r4,r17 4e458: 1887883a add r3,r3,r2 4e45c: 1880202c andhi r2,r3,128 4e460: 2023883a mov r17,r4 4e464: 103f1626 beq r2,zero,4e0c0 <__alt_data_end+0xfffdc0c0> 4e468: 00bfe034 movhi r2,65408 4e46c: 10bfffc4 addi r2,r2,-1 4e470: 5021883a mov r16,r10 4e474: 1886703a and r3,r3,r2 4e478: 003eaf06 br 4df38 <__alt_data_end+0xfffdbf38> 4e47c: 3825883a mov r18,r7 4e480: 003f0f06 br 4e0c0 <__alt_data_end+0xfffdc0c0> 4e484: 1c44b03a or r2,r3,r17 4e488: 8000251e bne r16,zero,4e520 <__subdf3+0x66c> 4e48c: 1000661e bne r2,zero,4e628 <__subdf3+0x774> 4e490: 2990b03a or r8,r5,r6 4e494: 40009626 beq r8,zero,4e6f0 <__subdf3+0x83c> 4e498: 2807883a mov r3,r5 4e49c: 3023883a mov r17,r6 4e4a0: 3825883a mov r18,r7 4e4a4: 003ea406 br 4df38 <__alt_data_end+0xfffdbf38> 4e4a8: 127ff804 addi r9,r2,-32 4e4ac: 01000804 movi r4,32 4e4b0: 2a52d83a srl r9,r5,r9 4e4b4: 11008c26 beq r2,r4,4e6e8 <__subdf3+0x834> 4e4b8: 01001004 movi r4,64 4e4bc: 2085c83a sub r2,r4,r2 4e4c0: 2884983a sll r2,r5,r2 4e4c4: 118cb03a or r6,r2,r6 4e4c8: 300cc03a cmpne r6,r6,zero 4e4cc: 4992b03a or r9,r9,r6 4e4d0: 0005883a mov r2,zero 4e4d4: 003f1206 br 4e120 <__alt_data_end+0xfffdc120> 4e4d8: 0101ffc4 movi r4,2047 4e4dc: 493f9c1e bne r9,r4,4e350 <__alt_data_end+0xfffdc350> 4e4e0: 2807883a mov r3,r5 4e4e4: 3023883a mov r17,r6 4e4e8: 4821883a mov r16,r9 4e4ec: 3825883a mov r18,r7 4e4f0: 003e9106 br 4df38 <__alt_data_end+0xfffdbf38> 4e4f4: 80001f1e bne r16,zero,4e574 <__subdf3+0x6c0> 4e4f8: 1c48b03a or r4,r3,r17 4e4fc: 20005a26 beq r4,zero,4e668 <__subdf3+0x7b4> 4e500: 0084303a nor r2,zero,r2 4e504: 1000561e bne r2,zero,4e660 <__subdf3+0x7ac> 4e508: 89a3883a add r17,r17,r6 4e50c: 1945883a add r2,r3,r5 4e510: 898d803a cmpltu r6,r17,r6 4e514: 3087883a add r3,r6,r2 4e518: 4821883a mov r16,r9 4e51c: 003f0506 br 4e134 <__alt_data_end+0xfffdc134> 4e520: 10002b1e bne r2,zero,4e5d0 <__subdf3+0x71c> 4e524: 2984b03a or r2,r5,r6 4e528: 10008026 beq r2,zero,4e72c <__subdf3+0x878> 4e52c: 2807883a mov r3,r5 4e530: 3023883a mov r17,r6 4e534: 3825883a mov r18,r7 4e538: 0401ffc4 movi r16,2047 4e53c: 003e7e06 br 4df38 <__alt_data_end+0xfffdbf38> 4e540: 3809883a mov r4,r7 4e544: 0011883a mov r8,zero 4e548: 0005883a mov r2,zero 4e54c: 003ee306 br 4e0dc <__alt_data_end+0xfffdc0dc> 4e550: 1c62b03a or r17,r3,r17 4e554: 8822c03a cmpne r17,r17,zero 4e558: 0005883a mov r2,zero 4e55c: 003f8906 br 4e384 <__alt_data_end+0xfffdc384> 4e560: 3809883a mov r4,r7 4e564: 4821883a mov r16,r9 4e568: 0011883a mov r8,zero 4e56c: 0005883a mov r2,zero 4e570: 003eda06 br 4e0dc <__alt_data_end+0xfffdc0dc> 4e574: 0101ffc4 movi r4,2047 4e578: 49003b26 beq r9,r4,4e668 <__subdf3+0x7b4> 4e57c: 0085c83a sub r2,zero,r2 4e580: 18c02034 orhi r3,r3,128 4e584: 01000e04 movi r4,56 4e588: 20806e16 blt r4,r2,4e744 <__subdf3+0x890> 4e58c: 010007c4 movi r4,31 4e590: 20807716 blt r4,r2,4e770 <__subdf3+0x8bc> 4e594: 01000804 movi r4,32 4e598: 2089c83a sub r4,r4,r2 4e59c: 1914983a sll r10,r3,r4 4e5a0: 8890d83a srl r8,r17,r2 4e5a4: 8908983a sll r4,r17,r4 4e5a8: 1884d83a srl r2,r3,r2 4e5ac: 5222b03a or r17,r10,r8 4e5b0: 2006c03a cmpne r3,r4,zero 4e5b4: 88e2b03a or r17,r17,r3 4e5b8: 89a3883a add r17,r17,r6 4e5bc: 1145883a add r2,r2,r5 4e5c0: 898d803a cmpltu r6,r17,r6 4e5c4: 3087883a add r3,r6,r2 4e5c8: 4821883a mov r16,r9 4e5cc: 003ed906 br 4e134 <__alt_data_end+0xfffdc134> 4e5d0: 2984b03a or r2,r5,r6 4e5d4: 10004226 beq r2,zero,4e6e0 <__subdf3+0x82c> 4e5d8: 1808d0fa srli r4,r3,3 4e5dc: 8822d0fa srli r17,r17,3 4e5e0: 1806977a slli r3,r3,29 4e5e4: 2080022c andhi r2,r4,8 4e5e8: 1c62b03a or r17,r3,r17 4e5ec: 10000826 beq r2,zero,4e610 <__subdf3+0x75c> 4e5f0: 2812d0fa srli r9,r5,3 4e5f4: 4880022c andhi r2,r9,8 4e5f8: 1000051e bne r2,zero,4e610 <__subdf3+0x75c> 4e5fc: 300cd0fa srli r6,r6,3 4e600: 2804977a slli r2,r5,29 4e604: 4809883a mov r4,r9 4e608: 3825883a mov r18,r7 4e60c: 11a2b03a or r17,r2,r6 4e610: 8806d77a srli r3,r17,29 4e614: 200890fa slli r4,r4,3 4e618: 882290fa slli r17,r17,3 4e61c: 0401ffc4 movi r16,2047 4e620: 1906b03a or r3,r3,r4 4e624: 003e4406 br 4df38 <__alt_data_end+0xfffdbf38> 4e628: 2984b03a or r2,r5,r6 4e62c: 103e4226 beq r2,zero,4df38 <__alt_data_end+0xfffdbf38> 4e630: 8989c83a sub r4,r17,r6 4e634: 8911803a cmpltu r8,r17,r4 4e638: 1945c83a sub r2,r3,r5 4e63c: 1205c83a sub r2,r2,r8 4e640: 1200202c andhi r8,r2,128 4e644: 403e9a26 beq r8,zero,4e0b0 <__alt_data_end+0xfffdc0b0> 4e648: 3463c83a sub r17,r6,r17 4e64c: 28c5c83a sub r2,r5,r3 4e650: 344d803a cmpltu r6,r6,r17 4e654: 1187c83a sub r3,r2,r6 4e658: 3825883a mov r18,r7 4e65c: 003e3606 br 4df38 <__alt_data_end+0xfffdbf38> 4e660: 0101ffc4 movi r4,2047 4e664: 493fc71e bne r9,r4,4e584 <__alt_data_end+0xfffdc584> 4e668: 2807883a mov r3,r5 4e66c: 3023883a mov r17,r6 4e670: 4821883a mov r16,r9 4e674: 003e3006 br 4df38 <__alt_data_end+0xfffdbf38> 4e678: 10003626 beq r2,zero,4e754 <__subdf3+0x8a0> 4e67c: 2984b03a or r2,r5,r6 4e680: 10001726 beq r2,zero,4e6e0 <__subdf3+0x82c> 4e684: 1808d0fa srli r4,r3,3 4e688: 8822d0fa srli r17,r17,3 4e68c: 1806977a slli r3,r3,29 4e690: 2080022c andhi r2,r4,8 4e694: 1c62b03a or r17,r3,r17 4e698: 10000726 beq r2,zero,4e6b8 <__subdf3+0x804> 4e69c: 2812d0fa srli r9,r5,3 4e6a0: 4880022c andhi r2,r9,8 4e6a4: 1000041e bne r2,zero,4e6b8 <__subdf3+0x804> 4e6a8: 300cd0fa srli r6,r6,3 4e6ac: 2804977a slli r2,r5,29 4e6b0: 4809883a mov r4,r9 4e6b4: 11a2b03a or r17,r2,r6 4e6b8: 8806d77a srli r3,r17,29 4e6bc: 200890fa slli r4,r4,3 4e6c0: 882290fa slli r17,r17,3 4e6c4: 3825883a mov r18,r7 4e6c8: 1906b03a or r3,r3,r4 4e6cc: 0401ffc4 movi r16,2047 4e6d0: 003e1906 br 4df38 <__alt_data_end+0xfffdbf38> 4e6d4: 000b883a mov r5,zero 4e6d8: 0005883a mov r2,zero 4e6dc: 003e2e06 br 4df98 <__alt_data_end+0xfffdbf98> 4e6e0: 0401ffc4 movi r16,2047 4e6e4: 003e1406 br 4df38 <__alt_data_end+0xfffdbf38> 4e6e8: 0005883a mov r2,zero 4e6ec: 003f7506 br 4e4c4 <__alt_data_end+0xfffdc4c4> 4e6f0: 0005883a mov r2,zero 4e6f4: 0009883a mov r4,zero 4e6f8: 003e7806 br 4e0dc <__alt_data_end+0xfffdc0dc> 4e6fc: 123ff804 addi r8,r2,-32 4e700: 01000804 movi r4,32 4e704: 1a10d83a srl r8,r3,r8 4e708: 11002526 beq r2,r4,4e7a0 <__subdf3+0x8ec> 4e70c: 01001004 movi r4,64 4e710: 2085c83a sub r2,r4,r2 4e714: 1884983a sll r2,r3,r2 4e718: 1444b03a or r2,r2,r17 4e71c: 1004c03a cmpne r2,r2,zero 4e720: 40a2b03a or r17,r8,r2 4e724: 0005883a mov r2,zero 4e728: 003f1606 br 4e384 <__alt_data_end+0xfffdc384> 4e72c: 02000434 movhi r8,16 4e730: 0009883a mov r4,zero 4e734: 423fffc4 addi r8,r8,-1 4e738: 00bfffc4 movi r2,-1 4e73c: 0401ffc4 movi r16,2047 4e740: 003e6606 br 4e0dc <__alt_data_end+0xfffdc0dc> 4e744: 1c62b03a or r17,r3,r17 4e748: 8822c03a cmpne r17,r17,zero 4e74c: 0005883a mov r2,zero 4e750: 003f9906 br 4e5b8 <__alt_data_end+0xfffdc5b8> 4e754: 2807883a mov r3,r5 4e758: 3023883a mov r17,r6 4e75c: 0401ffc4 movi r16,2047 4e760: 003df506 br 4df38 <__alt_data_end+0xfffdbf38> 4e764: 2807883a mov r3,r5 4e768: 3023883a mov r17,r6 4e76c: 003df206 br 4df38 <__alt_data_end+0xfffdbf38> 4e770: 123ff804 addi r8,r2,-32 4e774: 01000804 movi r4,32 4e778: 1a10d83a srl r8,r3,r8 4e77c: 11000a26 beq r2,r4,4e7a8 <__subdf3+0x8f4> 4e780: 01001004 movi r4,64 4e784: 2085c83a sub r2,r4,r2 4e788: 1884983a sll r2,r3,r2 4e78c: 1444b03a or r2,r2,r17 4e790: 1004c03a cmpne r2,r2,zero 4e794: 40a2b03a or r17,r8,r2 4e798: 0005883a mov r2,zero 4e79c: 003f8606 br 4e5b8 <__alt_data_end+0xfffdc5b8> 4e7a0: 0005883a mov r2,zero 4e7a4: 003fdc06 br 4e718 <__alt_data_end+0xfffdc718> 4e7a8: 0005883a mov r2,zero 4e7ac: 003ff706 br 4e78c <__alt_data_end+0xfffdc78c> 0004e7b0 <__floatunsidf>: 4e7b0: defffe04 addi sp,sp,-8 4e7b4: dc000015 stw r16,0(sp) 4e7b8: dfc00115 stw ra,4(sp) 4e7bc: 2021883a mov r16,r4 4e7c0: 20002226 beq r4,zero,4e84c <__floatunsidf+0x9c> 4e7c4: 0041efc0 call 41efc <__clzsi2> 4e7c8: 01010784 movi r4,1054 4e7cc: 2089c83a sub r4,r4,r2 4e7d0: 01810cc4 movi r6,1075 4e7d4: 310dc83a sub r6,r6,r4 4e7d8: 00c007c4 movi r3,31 4e7dc: 1980120e bge r3,r6,4e828 <__floatunsidf+0x78> 4e7e0: 00c104c4 movi r3,1043 4e7e4: 1907c83a sub r3,r3,r4 4e7e8: 80ca983a sll r5,r16,r3 4e7ec: 00800434 movhi r2,16 4e7f0: 10bfffc4 addi r2,r2,-1 4e7f4: 2101ffcc andi r4,r4,2047 4e7f8: 0021883a mov r16,zero 4e7fc: 288a703a and r5,r5,r2 4e800: 2008953a slli r4,r4,20 4e804: 00c00434 movhi r3,16 4e808: 18ffffc4 addi r3,r3,-1 4e80c: 28c6703a and r3,r5,r3 4e810: 8005883a mov r2,r16 4e814: 1906b03a or r3,r3,r4 4e818: dfc00117 ldw ra,4(sp) 4e81c: dc000017 ldw r16,0(sp) 4e820: dec00204 addi sp,sp,8 4e824: f800283a ret 4e828: 00c002c4 movi r3,11 4e82c: 188bc83a sub r5,r3,r2 4e830: 814ad83a srl r5,r16,r5 4e834: 00c00434 movhi r3,16 4e838: 18ffffc4 addi r3,r3,-1 4e83c: 81a0983a sll r16,r16,r6 4e840: 2101ffcc andi r4,r4,2047 4e844: 28ca703a and r5,r5,r3 4e848: 003fed06 br 4e800 <__alt_data_end+0xfffdc800> 4e84c: 0009883a mov r4,zero 4e850: 000b883a mov r5,zero 4e854: 003fea06 br 4e800 <__alt_data_end+0xfffdc800> 0004e858 : #undef errno extern int errno; static ALT_INLINE int* alt_get_errno(void) { 4e858: defffe04 addi sp,sp,-8 4e85c: dfc00115 stw ra,4(sp) 4e860: df000015 stw fp,0(sp) 4e864: d839883a mov fp,sp return ((alt_errno) ? alt_errno() : &errno); 4e868: d0a00b17 ldw r2,-32724(gp) 4e86c: 10000326 beq r2,zero,4e87c 4e870: d0a00b17 ldw r2,-32724(gp) 4e874: 103ee83a callr r2 4e878: 00000106 br 4e880 4e87c: d0a72104 addi r2,gp,-25468 } 4e880: e037883a mov sp,fp 4e884: dfc00117 ldw ra,4(sp) 4e888: df000017 ldw fp,0(sp) 4e88c: dec00204 addi sp,sp,8 4e890: f800283a ret 0004e894 : * * ALT_CLOSE is mapped onto the close() system call in alt_syscall.h */ int ALT_CLOSE (int fildes) { 4e894: defffb04 addi sp,sp,-20 4e898: dfc00415 stw ra,16(sp) 4e89c: df000315 stw fp,12(sp) 4e8a0: df000304 addi fp,sp,12 4e8a4: e13fff15 stw r4,-4(fp) * A common error case is that when the file descriptor was created, the call * to open() failed resulting in a negative file descriptor. This is trapped * below so that we don't try and process an invalid file descriptor. */ fd = (fildes < 0) ? NULL : &alt_fd_list[fildes]; 4e8a8: e0bfff17 ldw r2,-4(fp) 4e8ac: 10000816 blt r2,zero,4e8d0 4e8b0: 01400304 movi r5,12 4e8b4: e13fff17 ldw r4,-4(fp) 4e8b8: 004c9f80 call 4c9f8 <__mulsi3> 4e8bc: 1007883a mov r3,r2 4e8c0: 00800174 movhi r2,5 4e8c4: 108bca04 addi r2,r2,12072 4e8c8: 1885883a add r2,r3,r2 4e8cc: 00000106 br 4e8d4 4e8d0: 0005883a mov r2,zero 4e8d4: e0bffd15 stw r2,-12(fp) if (fd) 4e8d8: e0bffd17 ldw r2,-12(fp) 4e8dc: 10001926 beq r2,zero,4e944 /* * If the associated file system/device has a close function, call it so * that any necessary cleanup code can run. */ rval = (fd->dev->close) ? fd->dev->close(fd) : 0; 4e8e0: e0bffd17 ldw r2,-12(fp) 4e8e4: 10800017 ldw r2,0(r2) 4e8e8: 10800417 ldw r2,16(r2) 4e8ec: 10000626 beq r2,zero,4e908 4e8f0: e0bffd17 ldw r2,-12(fp) 4e8f4: 10800017 ldw r2,0(r2) 4e8f8: 10800417 ldw r2,16(r2) 4e8fc: e13ffd17 ldw r4,-12(fp) 4e900: 103ee83a callr r2 4e904: 00000106 br 4e90c 4e908: 0005883a mov r2,zero 4e90c: e0bffe15 stw r2,-8(fp) /* Free the file descriptor structure and return. */ alt_release_fd (fildes); 4e910: e13fff17 ldw r4,-4(fp) 4e914: 004ef7c0 call 4ef7c if (rval < 0) 4e918: e0bffe17 ldw r2,-8(fp) 4e91c: 1000070e bge r2,zero,4e93c { ALT_ERRNO = -rval; 4e920: 004e8580 call 4e858 4e924: 1007883a mov r3,r2 4e928: e0bffe17 ldw r2,-8(fp) 4e92c: 0085c83a sub r2,zero,r2 4e930: 18800015 stw r2,0(r3) return -1; 4e934: 00bfffc4 movi r2,-1 4e938: 00000706 br 4e958 } return 0; 4e93c: 0005883a mov r2,zero 4e940: 00000506 br 4e958 } else { ALT_ERRNO = EBADFD; 4e944: 004e8580 call 4e858 4e948: 1007883a mov r3,r2 4e94c: 00801444 movi r2,81 4e950: 18800015 stw r2,0(r3) return -1; 4e954: 00bfffc4 movi r2,-1 } } 4e958: e037883a mov sp,fp 4e95c: dfc00117 ldw ra,4(sp) 4e960: df000017 ldw fp,0(sp) 4e964: dec00204 addi sp,sp,8 4e968: f800283a ret 0004e96c : * by the alt_dev_null device. It simple discards all data passed to it, and * indicates that the data has been successfully transmitted. */ static int alt_dev_null_write (alt_fd* fd, const char* ptr, int len) { 4e96c: defffc04 addi sp,sp,-16 4e970: df000315 stw fp,12(sp) 4e974: df000304 addi fp,sp,12 4e978: e13ffd15 stw r4,-12(fp) 4e97c: e17ffe15 stw r5,-8(fp) 4e980: e1bfff15 stw r6,-4(fp) return len; 4e984: e0bfff17 ldw r2,-4(fp) } 4e988: e037883a mov sp,fp 4e98c: df000017 ldw fp,0(sp) 4e990: dec00104 addi sp,sp,4 4e994: f800283a ret 0004e998 : #undef errno extern int errno; static ALT_INLINE int* alt_get_errno(void) { 4e998: defffe04 addi sp,sp,-8 4e99c: dfc00115 stw ra,4(sp) 4e9a0: df000015 stw fp,0(sp) 4e9a4: d839883a mov fp,sp return ((alt_errno) ? alt_errno() : &errno); 4e9a8: d0a00b17 ldw r2,-32724(gp) 4e9ac: 10000326 beq r2,zero,4e9bc 4e9b0: d0a00b17 ldw r2,-32724(gp) 4e9b4: 103ee83a callr r2 4e9b8: 00000106 br 4e9c0 4e9bc: d0a72104 addi r2,gp,-25468 } 4e9c0: e037883a mov sp,fp 4e9c4: dfc00117 ldw ra,4(sp) 4e9c8: df000017 ldw fp,0(sp) 4e9cc: dec00204 addi sp,sp,8 4e9d0: f800283a ret 0004e9d4 : } #else /* !ALT_USE_DIRECT_DRIVERS */ int ALT_FSTAT (int file, struct stat *st) { 4e9d4: defffb04 addi sp,sp,-20 4e9d8: dfc00415 stw ra,16(sp) 4e9dc: df000315 stw fp,12(sp) 4e9e0: df000304 addi fp,sp,12 4e9e4: e13ffe15 stw r4,-8(fp) 4e9e8: e17fff15 stw r5,-4(fp) * A common error case is that when the file descriptor was created, the call * to open() failed resulting in a negative file descriptor. This is trapped * below so that we don't try and process an invalid file descriptor. */ fd = (file < 0) ? NULL : &alt_fd_list[file]; 4e9ec: e0bffe17 ldw r2,-8(fp) 4e9f0: 10000816 blt r2,zero,4ea14 4e9f4: 01400304 movi r5,12 4e9f8: e13ffe17 ldw r4,-8(fp) 4e9fc: 004c9f80 call 4c9f8 <__mulsi3> 4ea00: 1007883a mov r3,r2 4ea04: 00800174 movhi r2,5 4ea08: 108bca04 addi r2,r2,12072 4ea0c: 1885883a add r2,r3,r2 4ea10: 00000106 br 4ea18 4ea14: 0005883a mov r2,zero 4ea18: e0bffd15 stw r2,-12(fp) if (fd) 4ea1c: e0bffd17 ldw r2,-12(fp) 4ea20: 10001026 beq r2,zero,4ea64 { /* Call the drivers fstat() function to fill out the "st" structure. */ if (fd->dev->fstat) 4ea24: e0bffd17 ldw r2,-12(fp) 4ea28: 10800017 ldw r2,0(r2) 4ea2c: 10800817 ldw r2,32(r2) 4ea30: 10000726 beq r2,zero,4ea50 { return fd->dev->fstat(fd, st); 4ea34: e0bffd17 ldw r2,-12(fp) 4ea38: 10800017 ldw r2,0(r2) 4ea3c: 10800817 ldw r2,32(r2) 4ea40: e17fff17 ldw r5,-4(fp) 4ea44: e13ffd17 ldw r4,-12(fp) 4ea48: 103ee83a callr r2 4ea4c: 00000a06 br 4ea78 * device. */ else { st->st_mode = _IFCHR; 4ea50: e0bfff17 ldw r2,-4(fp) 4ea54: 00c80004 movi r3,8192 4ea58: 10c00115 stw r3,4(r2) return 0; 4ea5c: 0005883a mov r2,zero 4ea60: 00000506 br 4ea78 } } else { ALT_ERRNO = EBADFD; 4ea64: 004e9980 call 4e998 4ea68: 1007883a mov r3,r2 4ea6c: 00801444 movi r2,81 4ea70: 18800015 stw r2,0(r3) return -1; 4ea74: 00bfffc4 movi r2,-1 } } 4ea78: e037883a mov sp,fp 4ea7c: dfc00117 ldw ra,4(sp) 4ea80: df000017 ldw fp,0(sp) 4ea84: dec00204 addi sp,sp,8 4ea88: f800283a ret 0004ea8c : #undef errno extern int errno; static ALT_INLINE int* alt_get_errno(void) { 4ea8c: defffe04 addi sp,sp,-8 4ea90: dfc00115 stw ra,4(sp) 4ea94: df000015 stw fp,0(sp) 4ea98: d839883a mov fp,sp return ((alt_errno) ? alt_errno() : &errno); 4ea9c: d0a00b17 ldw r2,-32724(gp) 4eaa0: 10000326 beq r2,zero,4eab0 4eaa4: d0a00b17 ldw r2,-32724(gp) 4eaa8: 103ee83a callr r2 4eaac: 00000106 br 4eab4 4eab0: d0a72104 addi r2,gp,-25468 } 4eab4: e037883a mov sp,fp 4eab8: dfc00117 ldw ra,4(sp) 4eabc: df000017 ldw fp,0(sp) 4eac0: dec00204 addi sp,sp,8 4eac4: f800283a ret 0004eac8 : * * ALT_ISATTY is mapped onto the isatty() system call in alt_syscall.h */ int ALT_ISATTY (int file) { 4eac8: deffed04 addi sp,sp,-76 4eacc: dfc01215 stw ra,72(sp) 4ead0: df001115 stw fp,68(sp) 4ead4: df001104 addi fp,sp,68 4ead8: e13fff15 stw r4,-4(fp) * A common error case is that when the file descriptor was created, the call * to open() failed resulting in a negative file descriptor. This is trapped * below so that we don't try and process an invalid file descriptor. */ fd = (file < 0) ? NULL : &alt_fd_list[file]; 4eadc: e0bfff17 ldw r2,-4(fp) 4eae0: 10000816 blt r2,zero,4eb04 4eae4: 01400304 movi r5,12 4eae8: e13fff17 ldw r4,-4(fp) 4eaec: 004c9f80 call 4c9f8 <__mulsi3> 4eaf0: 1007883a mov r3,r2 4eaf4: 00800174 movhi r2,5 4eaf8: 108bca04 addi r2,r2,12072 4eafc: 1885883a add r2,r3,r2 4eb00: 00000106 br 4eb08 4eb04: 0005883a mov r2,zero 4eb08: e0bfef15 stw r2,-68(fp) if (fd) 4eb0c: e0bfef17 ldw r2,-68(fp) 4eb10: 10000e26 beq r2,zero,4eb4c /* * If a device driver does not provide an fstat() function, then it is * treated as a terminal device by default. */ if (!fd->dev->fstat) 4eb14: e0bfef17 ldw r2,-68(fp) 4eb18: 10800017 ldw r2,0(r2) 4eb1c: 10800817 ldw r2,32(r2) 4eb20: 1000021e bne r2,zero,4eb2c { return 1; 4eb24: 00800044 movi r2,1 4eb28: 00000d06 br 4eb60 * this is called so that the device can identify itself. */ else { fstat (file, &stat); 4eb2c: e0bff004 addi r2,fp,-64 4eb30: 100b883a mov r5,r2 4eb34: e13fff17 ldw r4,-4(fp) 4eb38: 004e9d40 call 4e9d4 return (stat.st_mode == _IFCHR) ? 1 : 0; 4eb3c: e0bff117 ldw r2,-60(fp) 4eb40: 10880020 cmpeqi r2,r2,8192 4eb44: 10803fcc andi r2,r2,255 4eb48: 00000506 br 4eb60 } } else { ALT_ERRNO = EBADFD; 4eb4c: 004ea8c0 call 4ea8c 4eb50: 1007883a mov r3,r2 4eb54: 00801444 movi r2,81 4eb58: 18800015 stw r2,0(r3) return 0; 4eb5c: 0005883a mov r2,zero } } 4eb60: e037883a mov sp,fp 4eb64: dfc00117 ldw ra,4(sp) 4eb68: df000017 ldw fp,0(sp) 4eb6c: dec00204 addi sp,sp,8 4eb70: f800283a ret 0004eb74 : */ static void ALT_INLINE alt_load_section (alt_u32* from, alt_u32* to, alt_u32* end) { 4eb74: defffc04 addi sp,sp,-16 4eb78: df000315 stw fp,12(sp) 4eb7c: df000304 addi fp,sp,12 4eb80: e13ffd15 stw r4,-12(fp) 4eb84: e17ffe15 stw r5,-8(fp) 4eb88: e1bfff15 stw r6,-4(fp) if (to != from) 4eb8c: e0fffe17 ldw r3,-8(fp) 4eb90: e0bffd17 ldw r2,-12(fp) 4eb94: 18800c26 beq r3,r2,4ebc8 { while( to != end ) 4eb98: 00000806 br 4ebbc { *to++ = *from++; 4eb9c: e0bffe17 ldw r2,-8(fp) 4eba0: 10c00104 addi r3,r2,4 4eba4: e0fffe15 stw r3,-8(fp) 4eba8: e0fffd17 ldw r3,-12(fp) 4ebac: 19000104 addi r4,r3,4 4ebb0: e13ffd15 stw r4,-12(fp) 4ebb4: 18c00017 ldw r3,0(r3) 4ebb8: 10c00015 stw r3,0(r2) alt_u32* to, alt_u32* end) { if (to != from) { while( to != end ) 4ebbc: e0fffe17 ldw r3,-8(fp) 4ebc0: e0bfff17 ldw r2,-4(fp) 4ebc4: 18bff51e bne r3,r2,4eb9c <__alt_data_end+0xfffdcb9c> { *to++ = *from++; } } } 4ebc8: 0001883a nop 4ebcc: e037883a mov sp,fp 4ebd0: df000017 ldw fp,0(sp) 4ebd4: dec00104 addi sp,sp,4 4ebd8: f800283a ret 0004ebdc : * there is no bootloader, so this application is responsible for loading to * RAM any sections that are required. */ void alt_load (void) { 4ebdc: defffe04 addi sp,sp,-8 4ebe0: dfc00115 stw ra,4(sp) 4ebe4: df000015 stw fp,0(sp) 4ebe8: d839883a mov fp,sp /* * Copy the .rwdata section. */ alt_load_section (&__flash_rwdata_start, 4ebec: 01800174 movhi r6,5 4ebf0: 31909c04 addi r6,r6,17008 4ebf4: 01400174 movhi r5,5 4ebf8: 29499704 addi r5,r5,9820 4ebfc: 01000174 movhi r4,5 4ec00: 21109c04 addi r4,r4,17008 4ec04: 004eb740 call 4eb74 /* * Copy the exception handler. */ alt_load_section (&__flash_exceptions_start, 4ec08: 01800134 movhi r6,4 4ec0c: 31808c04 addi r6,r6,560 4ec10: 01400134 movhi r5,4 4ec14: 29400804 addi r5,r5,32 4ec18: 01000134 movhi r4,4 4ec1c: 21000804 addi r4,r4,32 4ec20: 004eb740 call 4eb74 /* * Copy the .rodata section. */ alt_load_section (&__flash_rodata_start, 4ec24: 01800174 movhi r6,5 4ec28: 31899704 addi r6,r6,9820 4ec2c: 01400174 movhi r5,5 4ec30: 29480e04 addi r5,r5,8248 4ec34: 01000174 movhi r4,5 4ec38: 21080e04 addi r4,r4,8248 4ec3c: 004eb740 call 4eb74 /* * Now ensure that the caches are in synch. */ alt_dcache_flush_all(); 4ec40: 0050df80 call 50df8 alt_icache_flush_all(); 4ec44: 0050fb80 call 50fb8 } 4ec48: 0001883a nop 4ec4c: e037883a mov sp,fp 4ec50: dfc00117 ldw ra,4(sp) 4ec54: df000017 ldw fp,0(sp) 4ec58: dec00204 addi sp,sp,8 4ec5c: f800283a ret 0004ec60 : #undef errno extern int errno; static ALT_INLINE int* alt_get_errno(void) { 4ec60: defffe04 addi sp,sp,-8 4ec64: dfc00115 stw ra,4(sp) 4ec68: df000015 stw fp,0(sp) 4ec6c: d839883a mov fp,sp return ((alt_errno) ? alt_errno() : &errno); 4ec70: d0a00b17 ldw r2,-32724(gp) 4ec74: 10000326 beq r2,zero,4ec84 4ec78: d0a00b17 ldw r2,-32724(gp) 4ec7c: 103ee83a callr r2 4ec80: 00000106 br 4ec88 4ec84: d0a72104 addi r2,gp,-25468 } 4ec88: e037883a mov sp,fp 4ec8c: dfc00117 ldw ra,4(sp) 4ec90: df000017 ldw fp,0(sp) 4ec94: dec00204 addi sp,sp,8 4ec98: f800283a ret 0004ec9c : * ALT_LSEEK is mapped onto the lseek() system call in alt_syscall.h * */ off_t ALT_LSEEK (int file, off_t ptr, int dir) { 4ec9c: defff904 addi sp,sp,-28 4eca0: dfc00615 stw ra,24(sp) 4eca4: df000515 stw fp,20(sp) 4eca8: df000504 addi fp,sp,20 4ecac: e13ffd15 stw r4,-12(fp) 4ecb0: e17ffe15 stw r5,-8(fp) 4ecb4: e1bfff15 stw r6,-4(fp) alt_fd* fd; off_t rc = 0; 4ecb8: e03ffb15 stw zero,-20(fp) * A common error case is that when the file descriptor was created, the call * to open() failed resulting in a negative file descriptor. This is trapped * below so that we don't try and process an invalid file descriptor. */ fd = (file < 0) ? NULL : &alt_fd_list[file]; 4ecbc: e0bffd17 ldw r2,-12(fp) 4ecc0: 10000816 blt r2,zero,4ece4 4ecc4: 01400304 movi r5,12 4ecc8: e13ffd17 ldw r4,-12(fp) 4eccc: 004c9f80 call 4c9f8 <__mulsi3> 4ecd0: 1007883a mov r3,r2 4ecd4: 00800174 movhi r2,5 4ecd8: 108bca04 addi r2,r2,12072 4ecdc: 1885883a add r2,r3,r2 4ece0: 00000106 br 4ece8 4ece4: 0005883a mov r2,zero 4ece8: e0bffc15 stw r2,-16(fp) if (fd) 4ecec: e0bffc17 ldw r2,-16(fp) 4ecf0: 10001026 beq r2,zero,4ed34 /* * If the device driver provides an implementation of the lseek() function, * then call that to process the request. */ if (fd->dev->lseek) 4ecf4: e0bffc17 ldw r2,-16(fp) 4ecf8: 10800017 ldw r2,0(r2) 4ecfc: 10800717 ldw r2,28(r2) 4ed00: 10000926 beq r2,zero,4ed28 { rc = fd->dev->lseek(fd, ptr, dir); 4ed04: e0bffc17 ldw r2,-16(fp) 4ed08: 10800017 ldw r2,0(r2) 4ed0c: 10800717 ldw r2,28(r2) 4ed10: e1bfff17 ldw r6,-4(fp) 4ed14: e17ffe17 ldw r5,-8(fp) 4ed18: e13ffc17 ldw r4,-16(fp) 4ed1c: 103ee83a callr r2 4ed20: e0bffb15 stw r2,-20(fp) 4ed24: 00000506 br 4ed3c * Otherwise return an error. */ else { rc = -ENOTSUP; 4ed28: 00bfde84 movi r2,-134 4ed2c: e0bffb15 stw r2,-20(fp) 4ed30: 00000206 br 4ed3c } } else { rc = -EBADFD; 4ed34: 00bfebc4 movi r2,-81 4ed38: e0bffb15 stw r2,-20(fp) } if (rc < 0) 4ed3c: e0bffb17 ldw r2,-20(fp) 4ed40: 1000070e bge r2,zero,4ed60 { ALT_ERRNO = -rc; 4ed44: 004ec600 call 4ec60 4ed48: 1007883a mov r3,r2 4ed4c: e0bffb17 ldw r2,-20(fp) 4ed50: 0085c83a sub r2,zero,r2 4ed54: 18800015 stw r2,0(r3) rc = -1; 4ed58: 00bfffc4 movi r2,-1 4ed5c: e0bffb15 stw r2,-20(fp) } return rc; 4ed60: e0bffb17 ldw r2,-20(fp) } 4ed64: e037883a mov sp,fp 4ed68: dfc00117 ldw ra,4(sp) 4ed6c: df000017 ldw fp,0(sp) 4ed70: dec00204 addi sp,sp,8 4ed74: f800283a ret 0004ed78 : * devices/filesystems/components in the system; and call the entry point for * the users application, i.e. main(). */ void alt_main (void) { 4ed78: defffd04 addi sp,sp,-12 4ed7c: dfc00215 stw ra,8(sp) 4ed80: df000115 stw fp,4(sp) 4ed84: df000104 addi fp,sp,4 #endif /* ALT LOG - please see HAL/sys/alt_log_printf.h for details */ ALT_LOG_PRINT_BOOT("[alt_main.c] Entering alt_main, calling alt_irq_init.\r\n"); /* Initialize the interrupt controller. */ alt_irq_init (NULL); 4ed88: 0009883a mov r4,zero 4ed8c: 004f2200 call 4f220 /* Initialize the operating system */ ALT_LOG_PRINT_BOOT("[alt_main.c] Done alt_irq_init, calling alt_os_init.\r\n"); ALT_OS_INIT(); 4ed90: 0001883a nop ALT_LOG_PRINT_BOOT("[alt_main.c] Done OS Init, calling alt_sem_create.\r\n"); ALT_SEM_CREATE (&alt_fd_list_lock, 1); /* Initialize the device drivers/software components. */ ALT_LOG_PRINT_BOOT("[alt_main.c] Calling alt_sys_init.\r\n"); alt_sys_init(); 4ed94: 004f2580 call 4f258 * devices be present (not equal to /dev/null) and if direct drivers * aren't being used. */ ALT_LOG_PRINT_BOOT("[alt_main.c] Redirecting IO.\r\n"); alt_io_redirect(ALT_STDOUT, ALT_STDIN, ALT_STDERR); 4ed98: 01800174 movhi r6,5 4ed9c: 3188eb04 addi r6,r6,9132 4eda0: 01400174 movhi r5,5 4eda4: 2948eb04 addi r5,r5,9132 4eda8: 01000174 movhi r4,5 4edac: 2108eb04 addi r4,r4,9132 4edb0: 005135c0 call 5135c /* * Call the C++ constructors */ ALT_LOG_PRINT_BOOT("[alt_main.c] Calling C++ constructors.\r\n"); _do_ctors (); 4edb4: 0050ef80 call 50ef8 <_do_ctors> * redefined as _exit()). This is in the interest of reducing code footprint, * in that the atexit() overhead is removed when it's not needed. */ ALT_LOG_PRINT_BOOT("[alt_main.c] Calling atexit.\r\n"); atexit (_do_dtors); 4edb8: 01000174 movhi r4,5 4edbc: 2103d604 addi r4,r4,3928 4edc0: 0051ca40 call 51ca4 ALT_LOG_PRINT_BOOT("[alt_main.c] Calling main.\r\n"); #ifdef ALT_NO_EXIT main (alt_argc, alt_argv, alt_envp); #else result = main (alt_argc, alt_argv, alt_envp); 4edc4: d0a72217 ldw r2,-25464(gp) 4edc8: d0e72317 ldw r3,-25460(gp) 4edcc: d1272417 ldw r4,-25456(gp) 4edd0: 200d883a mov r6,r4 4edd4: 180b883a mov r5,r3 4edd8: 1009883a mov r4,r2 4eddc: 0040f980 call 40f98
4ede0: e0bfff15 stw r2,-4(fp) close(STDOUT_FILENO); 4ede4: 01000044 movi r4,1 4ede8: 004e8940 call 4e894 exit (result); 4edec: e13fff17 ldw r4,-4(fp) 4edf0: 0051cb80 call 51cb8 0004edf4 <__malloc_lock>: * configuration is single threaded, so there is nothing to do here. Note that * this requires that malloc is never called by an interrupt service routine. */ void __malloc_lock ( struct _reent *_r ) { 4edf4: defffe04 addi sp,sp,-8 4edf8: df000115 stw fp,4(sp) 4edfc: df000104 addi fp,sp,4 4ee00: e13fff15 stw r4,-4(fp) } 4ee04: 0001883a nop 4ee08: e037883a mov sp,fp 4ee0c: df000017 ldw fp,0(sp) 4ee10: dec00104 addi sp,sp,4 4ee14: f800283a ret 0004ee18 <__malloc_unlock>: /* * */ void __malloc_unlock ( struct _reent *_r ) { 4ee18: defffe04 addi sp,sp,-8 4ee1c: df000115 stw fp,4(sp) 4ee20: df000104 addi fp,sp,4 4ee24: e13fff15 stw r4,-4(fp) } 4ee28: 0001883a nop 4ee2c: e037883a mov sp,fp 4ee30: df000017 ldw fp,0(sp) 4ee34: dec00104 addi sp,sp,4 4ee38: f800283a ret 0004ee3c : #undef errno extern int errno; static ALT_INLINE int* alt_get_errno(void) { 4ee3c: defffe04 addi sp,sp,-8 4ee40: dfc00115 stw ra,4(sp) 4ee44: df000015 stw fp,0(sp) 4ee48: d839883a mov fp,sp return ((alt_errno) ? alt_errno() : &errno); 4ee4c: d0a00b17 ldw r2,-32724(gp) 4ee50: 10000326 beq r2,zero,4ee60 4ee54: d0a00b17 ldw r2,-32724(gp) 4ee58: 103ee83a callr r2 4ee5c: 00000106 br 4ee64 4ee60: d0a72104 addi r2,gp,-25468 } 4ee64: e037883a mov sp,fp 4ee68: dfc00117 ldw ra,4(sp) 4ee6c: df000017 ldw fp,0(sp) 4ee70: dec00204 addi sp,sp,8 4ee74: f800283a ret 0004ee78 : } #else /* !ALT_USE_DIRECT_DRIVERS */ int ALT_READ (int file, void *ptr, size_t len) { 4ee78: defff904 addi sp,sp,-28 4ee7c: dfc00615 stw ra,24(sp) 4ee80: df000515 stw fp,20(sp) 4ee84: df000504 addi fp,sp,20 4ee88: e13ffd15 stw r4,-12(fp) 4ee8c: e17ffe15 stw r5,-8(fp) 4ee90: e1bfff15 stw r6,-4(fp) * A common error case is that when the file descriptor was created, the call * to open() failed resulting in a negative file descriptor. This is trapped * below so that we don't try and process an invalid file descriptor. */ fd = (file < 0) ? NULL : &alt_fd_list[file]; 4ee94: e0bffd17 ldw r2,-12(fp) 4ee98: 10000816 blt r2,zero,4eebc 4ee9c: 01400304 movi r5,12 4eea0: e13ffd17 ldw r4,-12(fp) 4eea4: 004c9f80 call 4c9f8 <__mulsi3> 4eea8: 1007883a mov r3,r2 4eeac: 00800174 movhi r2,5 4eeb0: 108bca04 addi r2,r2,12072 4eeb4: 1885883a add r2,r3,r2 4eeb8: 00000106 br 4eec0 4eebc: 0005883a mov r2,zero 4eec0: e0bffb15 stw r2,-20(fp) if (fd) 4eec4: e0bffb17 ldw r2,-20(fp) 4eec8: 10002226 beq r2,zero,4ef54 * If the file has not been opened with read access, or if the driver does * not provide an implementation of read(), generate an error. Otherwise * call the drivers read() function to process the request. */ if (((fd->fd_flags & O_ACCMODE) != O_WRONLY) && 4eecc: e0bffb17 ldw r2,-20(fp) 4eed0: 10800217 ldw r2,8(r2) 4eed4: 108000cc andi r2,r2,3 4eed8: 10800060 cmpeqi r2,r2,1 4eedc: 1000181e bne r2,zero,4ef40 (fd->dev->read)) 4eee0: e0bffb17 ldw r2,-20(fp) 4eee4: 10800017 ldw r2,0(r2) 4eee8: 10800517 ldw r2,20(r2) * If the file has not been opened with read access, or if the driver does * not provide an implementation of read(), generate an error. Otherwise * call the drivers read() function to process the request. */ if (((fd->fd_flags & O_ACCMODE) != O_WRONLY) && 4eeec: 10001426 beq r2,zero,4ef40 (fd->dev->read)) { if ((rval = fd->dev->read(fd, ptr, len)) < 0) 4eef0: e0bffb17 ldw r2,-20(fp) 4eef4: 10800017 ldw r2,0(r2) 4eef8: 10800517 ldw r2,20(r2) 4eefc: e0ffff17 ldw r3,-4(fp) 4ef00: 180d883a mov r6,r3 4ef04: e17ffe17 ldw r5,-8(fp) 4ef08: e13ffb17 ldw r4,-20(fp) 4ef0c: 103ee83a callr r2 4ef10: e0bffc15 stw r2,-16(fp) 4ef14: e0bffc17 ldw r2,-16(fp) 4ef18: 1000070e bge r2,zero,4ef38 { ALT_ERRNO = -rval; 4ef1c: 004ee3c0 call 4ee3c 4ef20: 1007883a mov r3,r2 4ef24: e0bffc17 ldw r2,-16(fp) 4ef28: 0085c83a sub r2,zero,r2 4ef2c: 18800015 stw r2,0(r3) return -1; 4ef30: 00bfffc4 movi r2,-1 4ef34: 00000c06 br 4ef68 } return rval; 4ef38: e0bffc17 ldw r2,-16(fp) 4ef3c: 00000a06 br 4ef68 } else { ALT_ERRNO = EACCES; 4ef40: 004ee3c0 call 4ee3c 4ef44: 1007883a mov r3,r2 4ef48: 00800344 movi r2,13 4ef4c: 18800015 stw r2,0(r3) 4ef50: 00000406 br 4ef64 } } else { ALT_ERRNO = EBADFD; 4ef54: 004ee3c0 call 4ee3c 4ef58: 1007883a mov r3,r2 4ef5c: 00801444 movi r2,81 4ef60: 18800015 stw r2,0(r3) } return -1; 4ef64: 00bfffc4 movi r2,-1 } 4ef68: e037883a mov sp,fp 4ef6c: dfc00117 ldw ra,4(sp) 4ef70: df000017 ldw fp,0(sp) 4ef74: dec00204 addi sp,sp,8 4ef78: f800283a ret 0004ef7c : * File descriptors correcponding to standard in, standard out and standard * error cannont be released backed to the pool. They are always reserved. */ void alt_release_fd (int fd) { 4ef7c: defffc04 addi sp,sp,-16 4ef80: dfc00315 stw ra,12(sp) 4ef84: df000215 stw fp,8(sp) 4ef88: dc000115 stw r16,4(sp) 4ef8c: df000204 addi fp,sp,8 4ef90: e13ffe15 stw r4,-8(fp) if (fd > 2) 4ef94: e0bffe17 ldw r2,-8(fp) 4ef98: 108000d0 cmplti r2,r2,3 4ef9c: 1000111e bne r2,zero,4efe4 { alt_fd_list[fd].fd_flags = 0; 4efa0: 04000174 movhi r16,5 4efa4: 840bca04 addi r16,r16,12072 4efa8: e0bffe17 ldw r2,-8(fp) 4efac: 01400304 movi r5,12 4efb0: 1009883a mov r4,r2 4efb4: 004c9f80 call 4c9f8 <__mulsi3> 4efb8: 8085883a add r2,r16,r2 4efbc: 10800204 addi r2,r2,8 4efc0: 10000015 stw zero,0(r2) alt_fd_list[fd].dev = 0; 4efc4: 04000174 movhi r16,5 4efc8: 840bca04 addi r16,r16,12072 4efcc: e0bffe17 ldw r2,-8(fp) 4efd0: 01400304 movi r5,12 4efd4: 1009883a mov r4,r2 4efd8: 004c9f80 call 4c9f8 <__mulsi3> 4efdc: 8085883a add r2,r16,r2 4efe0: 10000015 stw zero,0(r2) } } 4efe4: 0001883a nop 4efe8: e6ffff04 addi sp,fp,-4 4efec: dfc00217 ldw ra,8(sp) 4eff0: df000117 ldw fp,4(sp) 4eff4: dc000017 ldw r16,0(sp) 4eff8: dec00304 addi sp,sp,12 4effc: f800283a ret 0004f000 : #endif caddr_t ALT_SBRK (int incr) __attribute__ ((no_instrument_function )); caddr_t ALT_SBRK (int incr) { 4f000: defff904 addi sp,sp,-28 4f004: df000615 stw fp,24(sp) 4f008: df000604 addi fp,sp,24 4f00c: e13fff15 stw r4,-4(fp) static ALT_INLINE alt_irq_context ALT_ALWAYS_INLINE alt_irq_disable_all (void) { alt_irq_context context; NIOS2_READ_STATUS (context); 4f010: 0005303a rdctl r2,status 4f014: e0bffe15 stw r2,-8(fp) NIOS2_WRITE_STATUS (context & ~NIOS2_STATUS_PIE_MSK); 4f018: e0fffe17 ldw r3,-8(fp) 4f01c: 00bfff84 movi r2,-2 4f020: 1884703a and r2,r3,r2 4f024: 1001703a wrctl status,r2 return context; 4f028: e0bffe17 ldw r2,-8(fp) alt_irq_context context; char *prev_heap_end; context = alt_irq_disable_all(); 4f02c: e0bffb15 stw r2,-20(fp) /* Always return data aligned on a word boundary */ heap_end = (char *)(((unsigned int)heap_end + 3) & ~3); 4f030: d0a00c17 ldw r2,-32720(gp) 4f034: 10c000c4 addi r3,r2,3 4f038: 00bfff04 movi r2,-4 4f03c: 1884703a and r2,r3,r2 4f040: d0a00c15 stw r2,-32720(gp) if (((heap_end + incr) - __alt_heap_start) > ALT_MAX_HEAP_BYTES) { alt_irq_enable_all(context); return (caddr_t)-1; } #else if ((heap_end + incr) > __alt_heap_limit) { 4f044: d0e00c17 ldw r3,-32720(gp) 4f048: e0bfff17 ldw r2,-4(fp) 4f04c: 1887883a add r3,r3,r2 4f050: 008001f4 movhi r2,7 4f054: 10880004 addi r2,r2,8192 4f058: 10c0062e bgeu r2,r3,4f074 4f05c: e0bffb17 ldw r2,-20(fp) 4f060: e0bffa15 stw r2,-24(fp) status &= ~NIOS2_STATUS_PIE_MSK; status |= (context & NIOS2_STATUS_PIE_MSK); NIOS2_WRITE_STATUS (status); #else NIOS2_WRITE_STATUS (context); 4f064: e0bffa17 ldw r2,-24(fp) 4f068: 1001703a wrctl status,r2 alt_irq_enable_all(context); return (caddr_t)-1; 4f06c: 00bfffc4 movi r2,-1 4f070: 00000b06 br 4f0a0 } #endif prev_heap_end = heap_end; 4f074: d0a00c17 ldw r2,-32720(gp) 4f078: e0bffd15 stw r2,-12(fp) heap_end += incr; 4f07c: d0e00c17 ldw r3,-32720(gp) 4f080: e0bfff17 ldw r2,-4(fp) 4f084: 1885883a add r2,r3,r2 4f088: d0a00c15 stw r2,-32720(gp) 4f08c: e0bffb17 ldw r2,-20(fp) 4f090: e0bffc15 stw r2,-16(fp) 4f094: e0bffc17 ldw r2,-16(fp) 4f098: 1001703a wrctl status,r2 #endif alt_irq_enable_all(context); return (caddr_t) prev_heap_end; 4f09c: e0bffd17 ldw r2,-12(fp) } 4f0a0: e037883a mov sp,fp 4f0a4: df000017 ldw fp,0(sp) 4f0a8: dec00104 addi sp,sp,4 4f0ac: f800283a ret 0004f0b0 : #undef errno extern int errno; static ALT_INLINE int* alt_get_errno(void) { 4f0b0: defffe04 addi sp,sp,-8 4f0b4: dfc00115 stw ra,4(sp) 4f0b8: df000015 stw fp,0(sp) 4f0bc: d839883a mov fp,sp return ((alt_errno) ? alt_errno() : &errno); 4f0c0: d0a00b17 ldw r2,-32724(gp) 4f0c4: 10000326 beq r2,zero,4f0d4 4f0c8: d0a00b17 ldw r2,-32724(gp) 4f0cc: 103ee83a callr r2 4f0d0: 00000106 br 4f0d8 4f0d4: d0a72104 addi r2,gp,-25468 } 4f0d8: e037883a mov sp,fp 4f0dc: dfc00117 ldw ra,4(sp) 4f0e0: df000017 ldw fp,0(sp) 4f0e4: dec00204 addi sp,sp,8 4f0e8: f800283a ret 0004f0ec : } #else /* !ALT_USE_DIRECT_DRIVERS */ int ALT_WRITE (int file, const void *ptr, size_t len) { 4f0ec: defff904 addi sp,sp,-28 4f0f0: dfc00615 stw ra,24(sp) 4f0f4: df000515 stw fp,20(sp) 4f0f8: df000504 addi fp,sp,20 4f0fc: e13ffd15 stw r4,-12(fp) 4f100: e17ffe15 stw r5,-8(fp) 4f104: e1bfff15 stw r6,-4(fp) * A common error case is that when the file descriptor was created, the call * to open() failed resulting in a negative file descriptor. This is trapped * below so that we don't try and process an invalid file descriptor. */ fd = (file < 0) ? NULL : &alt_fd_list[file]; 4f108: e0bffd17 ldw r2,-12(fp) 4f10c: 10000816 blt r2,zero,4f130 4f110: 01400304 movi r5,12 4f114: e13ffd17 ldw r4,-12(fp) 4f118: 004c9f80 call 4c9f8 <__mulsi3> 4f11c: 1007883a mov r3,r2 4f120: 00800174 movhi r2,5 4f124: 108bca04 addi r2,r2,12072 4f128: 1885883a add r2,r3,r2 4f12c: 00000106 br 4f134 4f130: 0005883a mov r2,zero 4f134: e0bffb15 stw r2,-20(fp) if (fd) 4f138: e0bffb17 ldw r2,-20(fp) 4f13c: 10002126 beq r2,zero,4f1c4 * If the file has not been opened with write access, or if the driver does * not provide an implementation of write(), generate an error. Otherwise * call the drivers write() function to process the request. */ if (((fd->fd_flags & O_ACCMODE) != O_RDONLY) && fd->dev->write) 4f140: e0bffb17 ldw r2,-20(fp) 4f144: 10800217 ldw r2,8(r2) 4f148: 108000cc andi r2,r2,3 4f14c: 10001826 beq r2,zero,4f1b0 4f150: e0bffb17 ldw r2,-20(fp) 4f154: 10800017 ldw r2,0(r2) 4f158: 10800617 ldw r2,24(r2) 4f15c: 10001426 beq r2,zero,4f1b0 { /* ALT_LOG - see altera_hal/HAL/inc/sys/alt_log_printf.h */ ALT_LOG_WRITE_FUNCTION(ptr,len); if ((rval = fd->dev->write(fd, ptr, len)) < 0) 4f160: e0bffb17 ldw r2,-20(fp) 4f164: 10800017 ldw r2,0(r2) 4f168: 10800617 ldw r2,24(r2) 4f16c: e0ffff17 ldw r3,-4(fp) 4f170: 180d883a mov r6,r3 4f174: e17ffe17 ldw r5,-8(fp) 4f178: e13ffb17 ldw r4,-20(fp) 4f17c: 103ee83a callr r2 4f180: e0bffc15 stw r2,-16(fp) 4f184: e0bffc17 ldw r2,-16(fp) 4f188: 1000070e bge r2,zero,4f1a8 { ALT_ERRNO = -rval; 4f18c: 004f0b00 call 4f0b0 4f190: 1007883a mov r3,r2 4f194: e0bffc17 ldw r2,-16(fp) 4f198: 0085c83a sub r2,zero,r2 4f19c: 18800015 stw r2,0(r3) return -1; 4f1a0: 00bfffc4 movi r2,-1 4f1a4: 00000c06 br 4f1d8 } return rval; 4f1a8: e0bffc17 ldw r2,-16(fp) 4f1ac: 00000a06 br 4f1d8 } else { ALT_ERRNO = EACCES; 4f1b0: 004f0b00 call 4f0b0 4f1b4: 1007883a mov r3,r2 4f1b8: 00800344 movi r2,13 4f1bc: 18800015 stw r2,0(r3) 4f1c0: 00000406 br 4f1d4 } } else { ALT_ERRNO = EBADFD; 4f1c4: 004f0b00 call 4f0b0 4f1c8: 1007883a mov r3,r2 4f1cc: 00801444 movi r2,81 4f1d0: 18800015 stw r2,0(r3) } return -1; 4f1d4: 00bfffc4 movi r2,-1 } 4f1d8: e037883a mov sp,fp 4f1dc: dfc00117 ldw ra,4(sp) 4f1e0: df000017 ldw fp,0(sp) 4f1e4: dec00204 addi sp,sp,8 4f1e8: f800283a ret 0004f1ec : */ extern int alt_fs_reg (alt_dev* dev); static ALT_INLINE int alt_dev_reg (alt_dev* dev) { 4f1ec: defffd04 addi sp,sp,-12 4f1f0: dfc00215 stw ra,8(sp) 4f1f4: df000115 stw fp,4(sp) 4f1f8: df000104 addi fp,sp,4 4f1fc: e13fff15 stw r4,-4(fp) extern alt_llist alt_dev_list; return alt_dev_llist_insert ((alt_dev_llist*) dev, &alt_dev_list); 4f200: d1600804 addi r5,gp,-32736 4f204: e13fff17 ldw r4,-4(fp) 4f208: 0050e540 call 50e54 } 4f20c: e037883a mov sp,fp 4f210: dfc00117 ldw ra,4(sp) 4f214: df000017 ldw fp,0(sp) 4f218: dec00204 addi sp,sp,8 4f21c: f800283a ret 0004f220 : * The "base" parameter is ignored and only * present for backwards-compatibility. */ void alt_irq_init ( const void* base ) { 4f220: defffd04 addi sp,sp,-12 4f224: dfc00215 stw ra,8(sp) 4f228: df000115 stw fp,4(sp) 4f22c: df000104 addi fp,sp,4 4f230: e13fff15 stw r4,-4(fp) ALTERA_NIOS2_GEN2_IRQ_INIT ( NIOS2, nios2); 4f234: 00518300 call 51830 * alt_irq_cpu_enable_interrupts() enables the CPU to start taking interrupts. */ static ALT_INLINE void ALT_ALWAYS_INLINE alt_irq_cpu_enable_interrupts (void) { NIOS2_WRITE_STATUS(NIOS2_STATUS_PIE_MSK 4f238: 00800044 movi r2,1 4f23c: 1001703a wrctl status,r2 alt_irq_cpu_enable_interrupts(); } 4f240: 0001883a nop 4f244: e037883a mov sp,fp 4f248: dfc00117 ldw ra,4(sp) 4f24c: df000017 ldw fp,0(sp) 4f250: dec00204 addi sp,sp,8 4f254: f800283a ret 0004f258 : * Initialize the non-interrupt controller devices. * Called after alt_irq_init(). */ void alt_sys_init( void ) { 4f258: defffe04 addi sp,sp,-8 4f25c: dfc00115 stw ra,4(sp) 4f260: df000015 stw fp,0(sp) 4f264: d839883a mov fp,sp ALTERA_AVALON_JTAG_UART_INIT ( JTAG_UART, jtag_uart); 4f268: 000d883a mov r6,zero 4f26c: 000b883a mov r5,zero 4f270: 01000174 movhi r4,5 4f274: 210c3404 addi r4,r4,12496 4f278: 004f41c0 call 4f41c 4f27c: 01000174 movhi r4,5 4f280: 210c2a04 addi r4,r4,12456 4f284: 004f1ec0 call 4f1ec ALTERA_AVALON_LCD_16207_INIT ( LCD_16207, lcd_16207); 4f288: 01000174 movhi r4,5 4f28c: 21104c04 addi r4,r4,16688 4f290: 0050b380 call 50b38 4f294: 01000174 movhi r4,5 4f298: 21104204 addi r4,r4,16648 4f29c: 004f1ec0 call 4f1ec } 4f2a0: 0001883a nop 4f2a4: e037883a mov sp,fp 4f2a8: dfc00117 ldw ra,4(sp) 4f2ac: df000017 ldw fp,0(sp) 4f2b0: dec00204 addi sp,sp,8 4f2b4: f800283a ret 0004f2b8 : * */ int altera_avalon_jtag_uart_read_fd(alt_fd* fd, char* buffer, int space) { 4f2b8: defffa04 addi sp,sp,-24 4f2bc: dfc00515 stw ra,20(sp) 4f2c0: df000415 stw fp,16(sp) 4f2c4: df000404 addi fp,sp,16 4f2c8: e13ffd15 stw r4,-12(fp) 4f2cc: e17ffe15 stw r5,-8(fp) 4f2d0: e1bfff15 stw r6,-4(fp) altera_avalon_jtag_uart_dev* dev = (altera_avalon_jtag_uart_dev*) fd->dev; 4f2d4: e0bffd17 ldw r2,-12(fp) 4f2d8: 10800017 ldw r2,0(r2) 4f2dc: e0bffc15 stw r2,-16(fp) return altera_avalon_jtag_uart_read(&dev->state, buffer, space, 4f2e0: e0bffc17 ldw r2,-16(fp) 4f2e4: 10c00a04 addi r3,r2,40 4f2e8: e0bffd17 ldw r2,-12(fp) 4f2ec: 10800217 ldw r2,8(r2) 4f2f0: 100f883a mov r7,r2 4f2f4: e1bfff17 ldw r6,-4(fp) 4f2f8: e17ffe17 ldw r5,-8(fp) 4f2fc: 1809883a mov r4,r3 4f300: 004f8e00 call 4f8e0 fd->fd_flags); } 4f304: e037883a mov sp,fp 4f308: dfc00117 ldw ra,4(sp) 4f30c: df000017 ldw fp,0(sp) 4f310: dec00204 addi sp,sp,8 4f314: f800283a ret 0004f318 : int altera_avalon_jtag_uart_write_fd(alt_fd* fd, const char* buffer, int space) { 4f318: defffa04 addi sp,sp,-24 4f31c: dfc00515 stw ra,20(sp) 4f320: df000415 stw fp,16(sp) 4f324: df000404 addi fp,sp,16 4f328: e13ffd15 stw r4,-12(fp) 4f32c: e17ffe15 stw r5,-8(fp) 4f330: e1bfff15 stw r6,-4(fp) altera_avalon_jtag_uart_dev* dev = (altera_avalon_jtag_uart_dev*) fd->dev; 4f334: e0bffd17 ldw r2,-12(fp) 4f338: 10800017 ldw r2,0(r2) 4f33c: e0bffc15 stw r2,-16(fp) return altera_avalon_jtag_uart_write(&dev->state, buffer, space, 4f340: e0bffc17 ldw r2,-16(fp) 4f344: 10c00a04 addi r3,r2,40 4f348: e0bffd17 ldw r2,-12(fp) 4f34c: 10800217 ldw r2,8(r2) 4f350: 100f883a mov r7,r2 4f354: e1bfff17 ldw r6,-4(fp) 4f358: e17ffe17 ldw r5,-8(fp) 4f35c: 1809883a mov r4,r3 4f360: 004fafc0 call 4fafc fd->fd_flags); } 4f364: e037883a mov sp,fp 4f368: dfc00117 ldw ra,4(sp) 4f36c: df000017 ldw fp,0(sp) 4f370: dec00204 addi sp,sp,8 4f374: f800283a ret 0004f378 : #ifndef ALTERA_AVALON_JTAG_UART_SMALL int altera_avalon_jtag_uart_close_fd(alt_fd* fd) { 4f378: defffc04 addi sp,sp,-16 4f37c: dfc00315 stw ra,12(sp) 4f380: df000215 stw fp,8(sp) 4f384: df000204 addi fp,sp,8 4f388: e13fff15 stw r4,-4(fp) altera_avalon_jtag_uart_dev* dev = (altera_avalon_jtag_uart_dev*) fd->dev; 4f38c: e0bfff17 ldw r2,-4(fp) 4f390: 10800017 ldw r2,0(r2) 4f394: e0bffe15 stw r2,-8(fp) return altera_avalon_jtag_uart_close(&dev->state, fd->fd_flags); 4f398: e0bffe17 ldw r2,-8(fp) 4f39c: 10c00a04 addi r3,r2,40 4f3a0: e0bfff17 ldw r2,-4(fp) 4f3a4: 10800217 ldw r2,8(r2) 4f3a8: 100b883a mov r5,r2 4f3ac: 1809883a mov r4,r3 4f3b0: 004f7880 call 4f788 } 4f3b4: e037883a mov sp,fp 4f3b8: dfc00117 ldw ra,4(sp) 4f3bc: df000017 ldw fp,0(sp) 4f3c0: dec00204 addi sp,sp,8 4f3c4: f800283a ret 0004f3c8 : int altera_avalon_jtag_uart_ioctl_fd(alt_fd* fd, int req, void* arg) { 4f3c8: defffa04 addi sp,sp,-24 4f3cc: dfc00515 stw ra,20(sp) 4f3d0: df000415 stw fp,16(sp) 4f3d4: df000404 addi fp,sp,16 4f3d8: e13ffd15 stw r4,-12(fp) 4f3dc: e17ffe15 stw r5,-8(fp) 4f3e0: e1bfff15 stw r6,-4(fp) altera_avalon_jtag_uart_dev* dev = (altera_avalon_jtag_uart_dev*) fd->dev; 4f3e4: e0bffd17 ldw r2,-12(fp) 4f3e8: 10800017 ldw r2,0(r2) 4f3ec: e0bffc15 stw r2,-16(fp) return altera_avalon_jtag_uart_ioctl(&dev->state, req, arg); 4f3f0: e0bffc17 ldw r2,-16(fp) 4f3f4: 10800a04 addi r2,r2,40 4f3f8: e1bfff17 ldw r6,-4(fp) 4f3fc: e17ffe17 ldw r5,-8(fp) 4f400: 1009883a mov r4,r2 4f404: 004f7f00 call 4f7f0 } 4f408: e037883a mov sp,fp 4f40c: dfc00117 ldw ra,4(sp) 4f410: df000017 ldw fp,0(sp) 4f414: dec00204 addi sp,sp,8 4f418: f800283a ret 0004f41c : * Return 1 on sucessful IRQ register and 0 on failure. */ void altera_avalon_jtag_uart_init(altera_avalon_jtag_uart_state* sp, int irq_controller_id, int irq) { 4f41c: defffa04 addi sp,sp,-24 4f420: dfc00515 stw ra,20(sp) 4f424: df000415 stw fp,16(sp) 4f428: df000404 addi fp,sp,16 4f42c: e13ffd15 stw r4,-12(fp) 4f430: e17ffe15 stw r5,-8(fp) 4f434: e1bfff15 stw r6,-4(fp) ALT_FLAG_CREATE(&sp->events, 0); ALT_SEM_CREATE(&sp->read_lock, 1); ALT_SEM_CREATE(&sp->write_lock, 1); /* enable read interrupts at the device */ sp->irq_enable = ALTERA_AVALON_JTAG_UART_CONTROL_RE_MSK; 4f438: e0bffd17 ldw r2,-12(fp) 4f43c: 00c00044 movi r3,1 4f440: 10c00815 stw r3,32(r2) IOWR_ALTERA_AVALON_JTAG_UART_CONTROL(sp->base, sp->irq_enable); 4f444: e0bffd17 ldw r2,-12(fp) 4f448: 10800017 ldw r2,0(r2) 4f44c: 10800104 addi r2,r2,4 4f450: 1007883a mov r3,r2 4f454: e0bffd17 ldw r2,-12(fp) 4f458: 10800817 ldw r2,32(r2) 4f45c: 18800035 stwio r2,0(r3) /* register the interrupt handler */ #ifdef ALT_ENHANCED_INTERRUPT_API_PRESENT alt_ic_isr_register(irq_controller_id, irq, altera_avalon_jtag_uart_irq, 4f460: e0bffe17 ldw r2,-8(fp) 4f464: e0ffff17 ldw r3,-4(fp) 4f468: d8000015 stw zero,0(sp) 4f46c: e1fffd17 ldw r7,-12(fp) 4f470: 01800174 movhi r6,5 4f474: 31bd3704 addi r6,r6,-2852 4f478: 180b883a mov r5,r3 4f47c: 1009883a mov r4,r2 4f480: 0050fd80 call 50fd8 #else alt_irq_register(irq, sp, altera_avalon_jtag_uart_irq); #endif /* Register an alarm to go off every second to check for presence of host */ sp->host_inactive = 0; 4f484: e0bffd17 ldw r2,-12(fp) 4f488: 10000915 stw zero,36(r2) if (alt_alarm_start(&sp->alarm, alt_ticks_per_second(), 4f48c: e0bffd17 ldw r2,-12(fp) 4f490: 10800204 addi r2,r2,8 * Obtain the system clock rate in ticks/s. */ static ALT_INLINE alt_u32 ALT_ALWAYS_INLINE alt_ticks_per_second (void) { return _alt_tick_rate; 4f494: d0e72617 ldw r3,-25448(gp) 4f498: e1fffd17 ldw r7,-12(fp) 4f49c: 01800174 movhi r6,5 4f4a0: 31bdba04 addi r6,r6,-2328 4f4a4: 180b883a mov r5,r3 4f4a8: 1009883a mov r4,r2 4f4ac: 0050ccc0 call 50ccc 4f4b0: 1000040e bge r2,zero,4f4c4 &altera_avalon_jtag_uart_timeout, sp) < 0) { /* If we can't set the alarm then record "don't know if host present" * and behave as though the host is present. */ sp->timeout = INT_MAX; 4f4b4: e0fffd17 ldw r3,-12(fp) 4f4b8: 00a00034 movhi r2,32768 4f4bc: 10bfffc4 addi r2,r2,-1 4f4c0: 18800115 stw r2,4(r3) } /* ALT_LOG - see altera_hal/HAL/inc/sys/alt_log_printf.h */ ALT_LOG_JTAG_UART_ALARM_REGISTER(sp, sp->base); } 4f4c4: 0001883a nop 4f4c8: e037883a mov sp,fp 4f4cc: dfc00117 ldw ra,4(sp) 4f4d0: df000017 ldw fp,0(sp) 4f4d4: dec00204 addi sp,sp,8 4f4d8: f800283a ret 0004f4dc : #ifdef ALT_ENHANCED_INTERRUPT_API_PRESENT static void altera_avalon_jtag_uart_irq(void* context) #else static void altera_avalon_jtag_uart_irq(void* context, alt_u32 id) #endif { 4f4dc: defff804 addi sp,sp,-32 4f4e0: df000715 stw fp,28(sp) 4f4e4: df000704 addi fp,sp,28 4f4e8: e13fff15 stw r4,-4(fp) altera_avalon_jtag_uart_state* sp = (altera_avalon_jtag_uart_state*) context; 4f4ec: e0bfff17 ldw r2,-4(fp) 4f4f0: e0bffb15 stw r2,-20(fp) unsigned int base = sp->base; 4f4f4: e0bffb17 ldw r2,-20(fp) 4f4f8: 10800017 ldw r2,0(r2) 4f4fc: e0bffc15 stw r2,-16(fp) /* ALT_LOG - see altera_hal/HAL/inc/sys/alt_log_printf.h */ ALT_LOG_JTAG_UART_ISR_FUNCTION(base, sp); for ( ; ; ) { unsigned int control = IORD_ALTERA_AVALON_JTAG_UART_CONTROL(base); 4f500: e0bffc17 ldw r2,-16(fp) 4f504: 10800104 addi r2,r2,4 4f508: 10800037 ldwio r2,0(r2) 4f50c: e0bffd15 stw r2,-12(fp) /* Return once nothing more to do */ if ((control & (ALTERA_AVALON_JTAG_UART_CONTROL_RI_MSK | ALTERA_AVALON_JTAG_UART_CONTROL_WI_MSK)) == 0) 4f510: e0bffd17 ldw r2,-12(fp) 4f514: 1080c00c andi r2,r2,768 4f518: 10006d26 beq r2,zero,4f6d0 break; if (control & ALTERA_AVALON_JTAG_UART_CONTROL_RI_MSK) 4f51c: e0bffd17 ldw r2,-12(fp) 4f520: 1080400c andi r2,r2,256 4f524: 10003526 beq r2,zero,4f5fc { /* process a read irq. Start by assuming that there is data in the * receive FIFO (otherwise why would we have been interrupted?) */ unsigned int data = 1 << ALTERA_AVALON_JTAG_UART_DATA_RAVAIL_OFST; 4f528: 00800074 movhi r2,1 4f52c: e0bff915 stw r2,-28(fp) for ( ; ; ) { /* Check whether there is space in the buffer. If not then we must not * read any characters from the buffer as they will be lost. */ unsigned int next = (sp->rx_in + 1) % ALTERA_AVALON_JTAG_UART_BUF_LEN; 4f530: e0bffb17 ldw r2,-20(fp) 4f534: 10800a17 ldw r2,40(r2) 4f538: 10800044 addi r2,r2,1 4f53c: 1081ffcc andi r2,r2,2047 4f540: e0bffe15 stw r2,-8(fp) if (next == sp->rx_out) 4f544: e0bffb17 ldw r2,-20(fp) 4f548: 10c00b17 ldw r3,44(r2) 4f54c: e0bffe17 ldw r2,-8(fp) 4f550: 18801526 beq r3,r2,4f5a8 break; /* Try to remove a character from the FIFO and find out whether there * are any more characters remaining. */ data = IORD_ALTERA_AVALON_JTAG_UART_DATA(base); 4f554: e0bffc17 ldw r2,-16(fp) 4f558: 10800037 ldwio r2,0(r2) 4f55c: e0bff915 stw r2,-28(fp) if ((data & ALTERA_AVALON_JTAG_UART_DATA_RVALID_MSK) == 0) 4f560: e0bff917 ldw r2,-28(fp) 4f564: 10a0000c andi r2,r2,32768 4f568: 10001126 beq r2,zero,4f5b0 break; sp->rx_buf[sp->rx_in] = (data & ALTERA_AVALON_JTAG_UART_DATA_DATA_MSK) >> ALTERA_AVALON_JTAG_UART_DATA_DATA_OFST; 4f56c: e0bffb17 ldw r2,-20(fp) 4f570: 10800a17 ldw r2,40(r2) 4f574: e0fff917 ldw r3,-28(fp) 4f578: 1809883a mov r4,r3 4f57c: e0fffb17 ldw r3,-20(fp) 4f580: 1885883a add r2,r3,r2 4f584: 10800e04 addi r2,r2,56 4f588: 11000005 stb r4,0(r2) sp->rx_in = (sp->rx_in + 1) % ALTERA_AVALON_JTAG_UART_BUF_LEN; 4f58c: e0bffb17 ldw r2,-20(fp) 4f590: 10800a17 ldw r2,40(r2) 4f594: 10800044 addi r2,r2,1 4f598: 10c1ffcc andi r3,r2,2047 4f59c: e0bffb17 ldw r2,-20(fp) 4f5a0: 10c00a15 stw r3,40(r2) /* Post an event to notify jtag_uart_read that a character has been read */ ALT_FLAG_POST (sp->events, ALT_JTAG_UART_READ_RDY, OS_FLAG_SET); } 4f5a4: 003fe206 br 4f530 <__alt_data_end+0xfffdd530> /* Check whether there is space in the buffer. If not then we must not * read any characters from the buffer as they will be lost. */ unsigned int next = (sp->rx_in + 1) % ALTERA_AVALON_JTAG_UART_BUF_LEN; if (next == sp->rx_out) break; 4f5a8: 0001883a nop 4f5ac: 00000106 br 4f5b4 * are any more characters remaining. */ data = IORD_ALTERA_AVALON_JTAG_UART_DATA(base); if ((data & ALTERA_AVALON_JTAG_UART_DATA_RVALID_MSK) == 0) break; 4f5b0: 0001883a nop /* Post an event to notify jtag_uart_read that a character has been read */ ALT_FLAG_POST (sp->events, ALT_JTAG_UART_READ_RDY, OS_FLAG_SET); } if (data & ALTERA_AVALON_JTAG_UART_DATA_RAVAIL_MSK) 4f5b4: e0bff917 ldw r2,-28(fp) 4f5b8: 10bfffec andhi r2,r2,65535 4f5bc: 10000f26 beq r2,zero,4f5fc { /* If there is still data available here then the buffer is full * so turn off receive interrupts until some space becomes available. */ sp->irq_enable &= ~ALTERA_AVALON_JTAG_UART_CONTROL_RE_MSK; 4f5c0: e0bffb17 ldw r2,-20(fp) 4f5c4: 10c00817 ldw r3,32(r2) 4f5c8: 00bfff84 movi r2,-2 4f5cc: 1886703a and r3,r3,r2 4f5d0: e0bffb17 ldw r2,-20(fp) 4f5d4: 10c00815 stw r3,32(r2) IOWR_ALTERA_AVALON_JTAG_UART_CONTROL(base, sp->irq_enable); 4f5d8: e0bffc17 ldw r2,-16(fp) 4f5dc: 10800104 addi r2,r2,4 4f5e0: 1007883a mov r3,r2 4f5e4: e0bffb17 ldw r2,-20(fp) 4f5e8: 10800817 ldw r2,32(r2) 4f5ec: 18800035 stwio r2,0(r3) /* Dummy read to ensure IRQ is cleared prior to ISR completion */ IORD_ALTERA_AVALON_JTAG_UART_CONTROL(base); 4f5f0: e0bffc17 ldw r2,-16(fp) 4f5f4: 10800104 addi r2,r2,4 4f5f8: 10800037 ldwio r2,0(r2) } } if (control & ALTERA_AVALON_JTAG_UART_CONTROL_WI_MSK) 4f5fc: e0bffd17 ldw r2,-12(fp) 4f600: 1080800c andi r2,r2,512 4f604: 103fbe26 beq r2,zero,4f500 <__alt_data_end+0xfffdd500> { /* process a write irq */ unsigned int space = (control & ALTERA_AVALON_JTAG_UART_CONTROL_WSPACE_MSK) >> ALTERA_AVALON_JTAG_UART_CONTROL_WSPACE_OFST; 4f608: e0bffd17 ldw r2,-12(fp) 4f60c: 1004d43a srli r2,r2,16 4f610: e0bffa15 stw r2,-24(fp) while (space > 0 && sp->tx_out != sp->tx_in) 4f614: 00001406 br 4f668 { IOWR_ALTERA_AVALON_JTAG_UART_DATA(base, sp->tx_buf[sp->tx_out]); 4f618: e0bffc17 ldw r2,-16(fp) 4f61c: e0fffb17 ldw r3,-20(fp) 4f620: 18c00d17 ldw r3,52(r3) 4f624: e13ffb17 ldw r4,-20(fp) 4f628: 20c7883a add r3,r4,r3 4f62c: 18c20e04 addi r3,r3,2104 4f630: 18c00003 ldbu r3,0(r3) 4f634: 18c03fcc andi r3,r3,255 4f638: 18c0201c xori r3,r3,128 4f63c: 18ffe004 addi r3,r3,-128 4f640: 10c00035 stwio r3,0(r2) sp->tx_out = (sp->tx_out + 1) % ALTERA_AVALON_JTAG_UART_BUF_LEN; 4f644: e0bffb17 ldw r2,-20(fp) 4f648: 10800d17 ldw r2,52(r2) 4f64c: 10800044 addi r2,r2,1 4f650: 10c1ffcc andi r3,r2,2047 4f654: e0bffb17 ldw r2,-20(fp) 4f658: 10c00d15 stw r3,52(r2) /* Post an event to notify jtag_uart_write that a character has been written */ ALT_FLAG_POST (sp->events, ALT_JTAG_UART_WRITE_RDY, OS_FLAG_SET); space--; 4f65c: e0bffa17 ldw r2,-24(fp) 4f660: 10bfffc4 addi r2,r2,-1 4f664: e0bffa15 stw r2,-24(fp) if (control & ALTERA_AVALON_JTAG_UART_CONTROL_WI_MSK) { /* process a write irq */ unsigned int space = (control & ALTERA_AVALON_JTAG_UART_CONTROL_WSPACE_MSK) >> ALTERA_AVALON_JTAG_UART_CONTROL_WSPACE_OFST; while (space > 0 && sp->tx_out != sp->tx_in) 4f668: e0bffa17 ldw r2,-24(fp) 4f66c: 10000526 beq r2,zero,4f684 4f670: e0bffb17 ldw r2,-20(fp) 4f674: 10c00d17 ldw r3,52(r2) 4f678: e0bffb17 ldw r2,-20(fp) 4f67c: 10800c17 ldw r2,48(r2) 4f680: 18bfe51e bne r3,r2,4f618 <__alt_data_end+0xfffdd618> ALT_FLAG_POST (sp->events, ALT_JTAG_UART_WRITE_RDY, OS_FLAG_SET); space--; } if (space > 0) 4f684: e0bffa17 ldw r2,-24(fp) 4f688: 103f9d26 beq r2,zero,4f500 <__alt_data_end+0xfffdd500> { /* If we don't have any more data available then turn off the TX interrupt */ sp->irq_enable &= ~ALTERA_AVALON_JTAG_UART_CONTROL_WE_MSK; 4f68c: e0bffb17 ldw r2,-20(fp) 4f690: 10c00817 ldw r3,32(r2) 4f694: 00bfff44 movi r2,-3 4f698: 1886703a and r3,r3,r2 4f69c: e0bffb17 ldw r2,-20(fp) 4f6a0: 10c00815 stw r3,32(r2) IOWR_ALTERA_AVALON_JTAG_UART_CONTROL(sp->base, sp->irq_enable); 4f6a4: e0bffb17 ldw r2,-20(fp) 4f6a8: 10800017 ldw r2,0(r2) 4f6ac: 10800104 addi r2,r2,4 4f6b0: 1007883a mov r3,r2 4f6b4: e0bffb17 ldw r2,-20(fp) 4f6b8: 10800817 ldw r2,32(r2) 4f6bc: 18800035 stwio r2,0(r3) /* Dummy read to ensure IRQ is cleared prior to ISR completion */ IORD_ALTERA_AVALON_JTAG_UART_CONTROL(base); 4f6c0: e0bffc17 ldw r2,-16(fp) 4f6c4: 10800104 addi r2,r2,4 4f6c8: 10800037 ldwio r2,0(r2) } } } 4f6cc: 003f8c06 br 4f500 <__alt_data_end+0xfffdd500> { unsigned int control = IORD_ALTERA_AVALON_JTAG_UART_CONTROL(base); /* Return once nothing more to do */ if ((control & (ALTERA_AVALON_JTAG_UART_CONTROL_RI_MSK | ALTERA_AVALON_JTAG_UART_CONTROL_WI_MSK)) == 0) break; 4f6d0: 0001883a nop /* Dummy read to ensure IRQ is cleared prior to ISR completion */ IORD_ALTERA_AVALON_JTAG_UART_CONTROL(base); } } } } 4f6d4: 0001883a nop 4f6d8: e037883a mov sp,fp 4f6dc: df000017 ldw fp,0(sp) 4f6e0: dec00104 addi sp,sp,4 4f6e4: f800283a ret 0004f6e8 : * Timeout routine is called every second */ static alt_u32 altera_avalon_jtag_uart_timeout(void* context) { 4f6e8: defff804 addi sp,sp,-32 4f6ec: df000715 stw fp,28(sp) 4f6f0: df000704 addi fp,sp,28 4f6f4: e13ffb15 stw r4,-20(fp) altera_avalon_jtag_uart_state* sp = (altera_avalon_jtag_uart_state *) context; 4f6f8: e0bffb17 ldw r2,-20(fp) 4f6fc: e0bff915 stw r2,-28(fp) unsigned int control = IORD_ALTERA_AVALON_JTAG_UART_CONTROL(sp->base); 4f700: e0bff917 ldw r2,-28(fp) 4f704: 10800017 ldw r2,0(r2) 4f708: 10800104 addi r2,r2,4 4f70c: 10800037 ldwio r2,0(r2) 4f710: e0bffa15 stw r2,-24(fp) if (control & ALTERA_AVALON_JTAG_UART_CONTROL_AC_MSK) 4f714: e0bffa17 ldw r2,-24(fp) 4f718: 1081000c andi r2,r2,1024 4f71c: 10000b26 beq r2,zero,4f74c { IOWR_ALTERA_AVALON_JTAG_UART_CONTROL(sp->base, sp->irq_enable | ALTERA_AVALON_JTAG_UART_CONTROL_AC_MSK); 4f720: e0bff917 ldw r2,-28(fp) 4f724: 10800017 ldw r2,0(r2) 4f728: 10800104 addi r2,r2,4 4f72c: 1007883a mov r3,r2 4f730: e0bff917 ldw r2,-28(fp) 4f734: 10800817 ldw r2,32(r2) 4f738: 10810014 ori r2,r2,1024 4f73c: 18800035 stwio r2,0(r3) sp->host_inactive = 0; 4f740: e0bff917 ldw r2,-28(fp) 4f744: 10000915 stw zero,36(r2) 4f748: 00000a06 br 4f774 } else if (sp->host_inactive < INT_MAX - 2) { 4f74c: e0bff917 ldw r2,-28(fp) 4f750: 10c00917 ldw r3,36(r2) 4f754: 00a00034 movhi r2,32768 4f758: 10bfff04 addi r2,r2,-4 4f75c: 10c00536 bltu r2,r3,4f774 sp->host_inactive++; 4f760: e0bff917 ldw r2,-28(fp) 4f764: 10800917 ldw r2,36(r2) 4f768: 10c00044 addi r3,r2,1 4f76c: e0bff917 ldw r2,-28(fp) 4f770: 10c00915 stw r3,36(r2) 4f774: d0a72617 ldw r2,-25448(gp) ALT_FLAG_POST (sp->events, ALT_JTAG_UART_TIMEOUT, OS_FLAG_SET); } } return alt_ticks_per_second(); } 4f778: e037883a mov sp,fp 4f77c: df000017 ldw fp,0(sp) 4f780: dec00104 addi sp,sp,4 4f784: f800283a ret 0004f788 : * The close routine is not implemented for the small driver; instead it will * map to null. This is because the small driver simply waits while characters * are transmitted; there is no interrupt-serviced buffer to empty */ int altera_avalon_jtag_uart_close(altera_avalon_jtag_uart_state* sp, int flags) { 4f788: defffd04 addi sp,sp,-12 4f78c: df000215 stw fp,8(sp) 4f790: df000204 addi fp,sp,8 4f794: e13ffe15 stw r4,-8(fp) 4f798: e17fff15 stw r5,-4(fp) /* * Wait for all transmit data to be emptied by the JTAG UART ISR, or * for a host-inactivity timeout, in which case transmit data will be lost */ while ( (sp->tx_out != sp->tx_in) && (sp->host_inactive < sp->timeout) ) { 4f79c: 00000506 br 4f7b4 if (flags & O_NONBLOCK) { 4f7a0: e0bfff17 ldw r2,-4(fp) 4f7a4: 1090000c andi r2,r2,16384 4f7a8: 10000226 beq r2,zero,4f7b4 return -EWOULDBLOCK; 4f7ac: 00bffd44 movi r2,-11 4f7b0: 00000b06 br 4f7e0 { /* * Wait for all transmit data to be emptied by the JTAG UART ISR, or * for a host-inactivity timeout, in which case transmit data will be lost */ while ( (sp->tx_out != sp->tx_in) && (sp->host_inactive < sp->timeout) ) { 4f7b4: e0bffe17 ldw r2,-8(fp) 4f7b8: 10c00d17 ldw r3,52(r2) 4f7bc: e0bffe17 ldw r2,-8(fp) 4f7c0: 10800c17 ldw r2,48(r2) 4f7c4: 18800526 beq r3,r2,4f7dc 4f7c8: e0bffe17 ldw r2,-8(fp) 4f7cc: 10c00917 ldw r3,36(r2) 4f7d0: e0bffe17 ldw r2,-8(fp) 4f7d4: 10800117 ldw r2,4(r2) 4f7d8: 18bff136 bltu r3,r2,4f7a0 <__alt_data_end+0xfffdd7a0> if (flags & O_NONBLOCK) { return -EWOULDBLOCK; } } return 0; 4f7dc: 0005883a mov r2,zero } 4f7e0: e037883a mov sp,fp 4f7e4: df000017 ldw fp,0(sp) 4f7e8: dec00104 addi sp,sp,4 4f7ec: f800283a ret 0004f7f0 : /* ----------------------------------------------------------- */ int altera_avalon_jtag_uart_ioctl(altera_avalon_jtag_uart_state* sp, int req, void* arg) { 4f7f0: defffa04 addi sp,sp,-24 4f7f4: df000515 stw fp,20(sp) 4f7f8: df000504 addi fp,sp,20 4f7fc: e13ffd15 stw r4,-12(fp) 4f800: e17ffe15 stw r5,-8(fp) 4f804: e1bfff15 stw r6,-4(fp) int rc = -ENOTTY; 4f808: 00bff9c4 movi r2,-25 4f80c: e0bffb15 stw r2,-20(fp) switch (req) 4f810: e0bffe17 ldw r2,-8(fp) 4f814: 10da8060 cmpeqi r3,r2,27137 4f818: 1800031e bne r3,zero,4f828 4f81c: 109a80a0 cmpeqi r2,r2,27138 4f820: 1000181e bne r2,zero,4f884 rc = 0; } break; default: break; 4f824: 00002906 br 4f8cc switch (req) { case TIOCSTIMEOUT: /* Set the time to wait until assuming host is not connected */ if (sp->timeout != INT_MAX) 4f828: e0bffd17 ldw r2,-12(fp) 4f82c: 10c00117 ldw r3,4(r2) 4f830: 00a00034 movhi r2,32768 4f834: 10bfffc4 addi r2,r2,-1 4f838: 18802126 beq r3,r2,4f8c0 { int timeout = *((int *)arg); 4f83c: e0bfff17 ldw r2,-4(fp) 4f840: 10800017 ldw r2,0(r2) 4f844: e0bffc15 stw r2,-16(fp) sp->timeout = (timeout >= 2 && timeout < INT_MAX) ? timeout : INT_MAX - 1; 4f848: e0bffc17 ldw r2,-16(fp) 4f84c: 10800090 cmplti r2,r2,2 4f850: 1000061e bne r2,zero,4f86c 4f854: e0fffc17 ldw r3,-16(fp) 4f858: 00a00034 movhi r2,32768 4f85c: 10bfffc4 addi r2,r2,-1 4f860: 18800226 beq r3,r2,4f86c 4f864: e0bffc17 ldw r2,-16(fp) 4f868: 00000206 br 4f874 4f86c: 00a00034 movhi r2,32768 4f870: 10bfff84 addi r2,r2,-2 4f874: e0fffd17 ldw r3,-12(fp) 4f878: 18800115 stw r2,4(r3) rc = 0; 4f87c: e03ffb15 stw zero,-20(fp) } break; 4f880: 00000f06 br 4f8c0 case TIOCGCONNECTED: /* Find out whether host is connected */ if (sp->timeout != INT_MAX) 4f884: e0bffd17 ldw r2,-12(fp) 4f888: 10c00117 ldw r3,4(r2) 4f88c: 00a00034 movhi r2,32768 4f890: 10bfffc4 addi r2,r2,-1 4f894: 18800c26 beq r3,r2,4f8c8 { *((int *)arg) = (sp->host_inactive < sp->timeout) ? 1 : 0; 4f898: e0bffd17 ldw r2,-12(fp) 4f89c: 10c00917 ldw r3,36(r2) 4f8a0: e0bffd17 ldw r2,-12(fp) 4f8a4: 10800117 ldw r2,4(r2) 4f8a8: 1885803a cmpltu r2,r3,r2 4f8ac: 10c03fcc andi r3,r2,255 4f8b0: e0bfff17 ldw r2,-4(fp) 4f8b4: 10c00015 stw r3,0(r2) rc = 0; 4f8b8: e03ffb15 stw zero,-20(fp) } break; 4f8bc: 00000206 br 4f8c8 { int timeout = *((int *)arg); sp->timeout = (timeout >= 2 && timeout < INT_MAX) ? timeout : INT_MAX - 1; rc = 0; } break; 4f8c0: 0001883a nop 4f8c4: 00000106 br 4f8cc if (sp->timeout != INT_MAX) { *((int *)arg) = (sp->host_inactive < sp->timeout) ? 1 : 0; rc = 0; } break; 4f8c8: 0001883a nop default: break; } return rc; 4f8cc: e0bffb17 ldw r2,-20(fp) } 4f8d0: e037883a mov sp,fp 4f8d4: df000017 ldw fp,0(sp) 4f8d8: dec00104 addi sp,sp,4 4f8dc: f800283a ret 0004f8e0 : /* ----------------------------------------------------------- */ int altera_avalon_jtag_uart_read(altera_avalon_jtag_uart_state* sp, char * buffer, int space, int flags) { 4f8e0: defff304 addi sp,sp,-52 4f8e4: dfc00c15 stw ra,48(sp) 4f8e8: df000b15 stw fp,44(sp) 4f8ec: df000b04 addi fp,sp,44 4f8f0: e13ffc15 stw r4,-16(fp) 4f8f4: e17ffd15 stw r5,-12(fp) 4f8f8: e1bffe15 stw r6,-8(fp) 4f8fc: e1ffff15 stw r7,-4(fp) char * ptr = buffer; 4f900: e0bffd17 ldw r2,-12(fp) 4f904: e0bff515 stw r2,-44(fp) * When running in a multi threaded environment, obtain the "read_lock" * semaphore. This ensures that reading from the device is thread-safe. */ ALT_SEM_PEND (sp->read_lock, 0); while (space > 0) 4f908: 00004706 br 4fa28 unsigned int in, out; /* Read as much data as possible */ do { in = sp->rx_in; 4f90c: e0bffc17 ldw r2,-16(fp) 4f910: 10800a17 ldw r2,40(r2) 4f914: e0bff715 stw r2,-36(fp) out = sp->rx_out; 4f918: e0bffc17 ldw r2,-16(fp) 4f91c: 10800b17 ldw r2,44(r2) 4f920: e0bff815 stw r2,-32(fp) if (in >= out) 4f924: e0fff717 ldw r3,-36(fp) 4f928: e0bff817 ldw r2,-32(fp) 4f92c: 18800536 bltu r3,r2,4f944 n = in - out; 4f930: e0fff717 ldw r3,-36(fp) 4f934: e0bff817 ldw r2,-32(fp) 4f938: 1885c83a sub r2,r3,r2 4f93c: e0bff615 stw r2,-40(fp) 4f940: 00000406 br 4f954 else n = ALTERA_AVALON_JTAG_UART_BUF_LEN - out; 4f944: 00c20004 movi r3,2048 4f948: e0bff817 ldw r2,-32(fp) 4f94c: 1885c83a sub r2,r3,r2 4f950: e0bff615 stw r2,-40(fp) if (n == 0) 4f954: e0bff617 ldw r2,-40(fp) 4f958: 10001e26 beq r2,zero,4f9d4 break; /* No more data available */ if (n > space) 4f95c: e0fffe17 ldw r3,-8(fp) 4f960: e0bff617 ldw r2,-40(fp) 4f964: 1880022e bgeu r3,r2,4f970 n = space; 4f968: e0bffe17 ldw r2,-8(fp) 4f96c: e0bff615 stw r2,-40(fp) memcpy(ptr, sp->rx_buf + out, n); 4f970: e0bffc17 ldw r2,-16(fp) 4f974: 10c00e04 addi r3,r2,56 4f978: e0bff817 ldw r2,-32(fp) 4f97c: 1885883a add r2,r3,r2 4f980: e1bff617 ldw r6,-40(fp) 4f984: 100b883a mov r5,r2 4f988: e13ff517 ldw r4,-44(fp) 4f98c: 00476c00 call 476c0 ptr += n; 4f990: e0fff517 ldw r3,-44(fp) 4f994: e0bff617 ldw r2,-40(fp) 4f998: 1885883a add r2,r3,r2 4f99c: e0bff515 stw r2,-44(fp) space -= n; 4f9a0: e0fffe17 ldw r3,-8(fp) 4f9a4: e0bff617 ldw r2,-40(fp) 4f9a8: 1885c83a sub r2,r3,r2 4f9ac: e0bffe15 stw r2,-8(fp) sp->rx_out = (out + n) % ALTERA_AVALON_JTAG_UART_BUF_LEN; 4f9b0: e0fff817 ldw r3,-32(fp) 4f9b4: e0bff617 ldw r2,-40(fp) 4f9b8: 1885883a add r2,r3,r2 4f9bc: 10c1ffcc andi r3,r2,2047 4f9c0: e0bffc17 ldw r2,-16(fp) 4f9c4: 10c00b15 stw r3,44(r2) } while (space > 0); 4f9c8: e0bffe17 ldw r2,-8(fp) 4f9cc: 00bfcf16 blt zero,r2,4f90c <__alt_data_end+0xfffdd90c> 4f9d0: 00000106 br 4f9d8 n = in - out; else n = ALTERA_AVALON_JTAG_UART_BUF_LEN - out; if (n == 0) break; /* No more data available */ 4f9d4: 0001883a nop sp->rx_out = (out + n) % ALTERA_AVALON_JTAG_UART_BUF_LEN; } while (space > 0); /* If we read any data then return it */ if (ptr != buffer) 4f9d8: e0fff517 ldw r3,-44(fp) 4f9dc: e0bffd17 ldw r2,-12(fp) 4f9e0: 1880141e bne r3,r2,4fa34 break; /* If in non-blocking mode then return error */ if (flags & O_NONBLOCK) 4f9e4: e0bfff17 ldw r2,-4(fp) 4f9e8: 1090000c andi r2,r2,16384 4f9ec: 1000131e bne r2,zero,4fa3c while (in == sp->rx_in && sp->host_inactive < sp->timeout) ; } #else /* No OS: Always spin */ while (in == sp->rx_in && sp->host_inactive < sp->timeout) 4f9f0: 0001883a nop 4f9f4: e0bffc17 ldw r2,-16(fp) 4f9f8: 10c00a17 ldw r3,40(r2) 4f9fc: e0bff717 ldw r2,-36(fp) 4fa00: 1880051e bne r3,r2,4fa18 4fa04: e0bffc17 ldw r2,-16(fp) 4fa08: 10c00917 ldw r3,36(r2) 4fa0c: e0bffc17 ldw r2,-16(fp) 4fa10: 10800117 ldw r2,4(r2) 4fa14: 18bff736 bltu r3,r2,4f9f4 <__alt_data_end+0xfffdd9f4> ; #endif /* __ucosii__ */ if (in == sp->rx_in) 4fa18: e0bffc17 ldw r2,-16(fp) 4fa1c: 10c00a17 ldw r3,40(r2) 4fa20: e0bff717 ldw r2,-36(fp) 4fa24: 18800726 beq r3,r2,4fa44 * When running in a multi threaded environment, obtain the "read_lock" * semaphore. This ensures that reading from the device is thread-safe. */ ALT_SEM_PEND (sp->read_lock, 0); while (space > 0) 4fa28: e0bffe17 ldw r2,-8(fp) 4fa2c: 00bfb716 blt zero,r2,4f90c <__alt_data_end+0xfffdd90c> 4fa30: 00000506 br 4fa48 } while (space > 0); /* If we read any data then return it */ if (ptr != buffer) break; 4fa34: 0001883a nop 4fa38: 00000306 br 4fa48 /* If in non-blocking mode then return error */ if (flags & O_NONBLOCK) break; 4fa3c: 0001883a nop 4fa40: 00000106 br 4fa48 while (in == sp->rx_in && sp->host_inactive < sp->timeout) ; #endif /* __ucosii__ */ if (in == sp->rx_in) break; 4fa44: 0001883a nop * semaphore so that other threads can access the buffer. */ ALT_SEM_POST (sp->read_lock); if (ptr != buffer) 4fa48: e0fff517 ldw r3,-44(fp) 4fa4c: e0bffd17 ldw r2,-12(fp) 4fa50: 18801826 beq r3,r2,4fab4 static ALT_INLINE alt_irq_context ALT_ALWAYS_INLINE alt_irq_disable_all (void) { alt_irq_context context; NIOS2_READ_STATUS (context); 4fa54: 0005303a rdctl r2,status 4fa58: e0bffb15 stw r2,-20(fp) NIOS2_WRITE_STATUS (context & ~NIOS2_STATUS_PIE_MSK); 4fa5c: e0fffb17 ldw r3,-20(fp) 4fa60: 00bfff84 movi r2,-2 4fa64: 1884703a and r2,r3,r2 4fa68: 1001703a wrctl status,r2 return context; 4fa6c: e0bffb17 ldw r2,-20(fp) { /* If we read any data then there is space in the buffer so enable interrupts */ context = alt_irq_disable_all(); 4fa70: e0bffa15 stw r2,-24(fp) sp->irq_enable |= ALTERA_AVALON_JTAG_UART_CONTROL_RE_MSK; 4fa74: e0bffc17 ldw r2,-16(fp) 4fa78: 10800817 ldw r2,32(r2) 4fa7c: 10c00054 ori r3,r2,1 4fa80: e0bffc17 ldw r2,-16(fp) 4fa84: 10c00815 stw r3,32(r2) IOWR_ALTERA_AVALON_JTAG_UART_CONTROL(sp->base, sp->irq_enable); 4fa88: e0bffc17 ldw r2,-16(fp) 4fa8c: 10800017 ldw r2,0(r2) 4fa90: 10800104 addi r2,r2,4 4fa94: 1007883a mov r3,r2 4fa98: e0bffc17 ldw r2,-16(fp) 4fa9c: 10800817 ldw r2,32(r2) 4faa0: 18800035 stwio r2,0(r3) 4faa4: e0bffa17 ldw r2,-24(fp) 4faa8: e0bff915 stw r2,-28(fp) status &= ~NIOS2_STATUS_PIE_MSK; status |= (context & NIOS2_STATUS_PIE_MSK); NIOS2_WRITE_STATUS (status); #else NIOS2_WRITE_STATUS (context); 4faac: e0bff917 ldw r2,-28(fp) 4fab0: 1001703a wrctl status,r2 alt_irq_enable_all(context); } if (ptr != buffer) 4fab4: e0fff517 ldw r3,-44(fp) 4fab8: e0bffd17 ldw r2,-12(fp) 4fabc: 18800426 beq r3,r2,4fad0 return ptr - buffer; 4fac0: e0fff517 ldw r3,-44(fp) 4fac4: e0bffd17 ldw r2,-12(fp) 4fac8: 1885c83a sub r2,r3,r2 4facc: 00000606 br 4fae8 else if (flags & O_NONBLOCK) 4fad0: e0bfff17 ldw r2,-4(fp) 4fad4: 1090000c andi r2,r2,16384 4fad8: 10000226 beq r2,zero,4fae4 return -EWOULDBLOCK; 4fadc: 00bffd44 movi r2,-11 4fae0: 00000106 br 4fae8 else return -EIO; 4fae4: 00bffec4 movi r2,-5 } 4fae8: e037883a mov sp,fp 4faec: dfc00117 ldw ra,4(sp) 4faf0: df000017 ldw fp,0(sp) 4faf4: dec00204 addi sp,sp,8 4faf8: f800283a ret 0004fafc : /* ----------------------------------------------------------- */ int altera_avalon_jtag_uart_write(altera_avalon_jtag_uart_state* sp, const char * ptr, int count, int flags) { 4fafc: defff304 addi sp,sp,-52 4fb00: dfc00c15 stw ra,48(sp) 4fb04: df000b15 stw fp,44(sp) 4fb08: df000b04 addi fp,sp,44 4fb0c: e13ffc15 stw r4,-16(fp) 4fb10: e17ffd15 stw r5,-12(fp) 4fb14: e1bffe15 stw r6,-8(fp) 4fb18: e1ffff15 stw r7,-4(fp) /* Remove warning at optimisation level 03 by seting out to 0 */ unsigned int in, out=0; 4fb1c: e03ff515 stw zero,-44(fp) unsigned int n; alt_irq_context context; const char * start = ptr; 4fb20: e0bffd17 ldw r2,-12(fp) 4fb24: e0bff715 stw r2,-36(fp) ALT_SEM_PEND (sp->write_lock, 0); do { /* Copy as much as we can into the transmit buffer */ while (count > 0) 4fb28: 00003706 br 4fc08 { /* We need a stable value of the out pointer to calculate the space available */ in = sp->tx_in; 4fb2c: e0bffc17 ldw r2,-16(fp) 4fb30: 10800c17 ldw r2,48(r2) 4fb34: e0bff915 stw r2,-28(fp) out = sp->tx_out; 4fb38: e0bffc17 ldw r2,-16(fp) 4fb3c: 10800d17 ldw r2,52(r2) 4fb40: e0bff515 stw r2,-44(fp) if (in < out) 4fb44: e0fff917 ldw r3,-28(fp) 4fb48: e0bff517 ldw r2,-44(fp) 4fb4c: 1880062e bgeu r3,r2,4fb68 n = out - 1 - in; 4fb50: e0fff517 ldw r3,-44(fp) 4fb54: e0bff917 ldw r2,-28(fp) 4fb58: 1885c83a sub r2,r3,r2 4fb5c: 10bfffc4 addi r2,r2,-1 4fb60: e0bff615 stw r2,-40(fp) 4fb64: 00000b06 br 4fb94 else if (out > 0) 4fb68: e0bff517 ldw r2,-44(fp) 4fb6c: 10000526 beq r2,zero,4fb84 n = ALTERA_AVALON_JTAG_UART_BUF_LEN - in; 4fb70: 00c20004 movi r3,2048 4fb74: e0bff917 ldw r2,-28(fp) 4fb78: 1885c83a sub r2,r3,r2 4fb7c: e0bff615 stw r2,-40(fp) 4fb80: 00000406 br 4fb94 else n = ALTERA_AVALON_JTAG_UART_BUF_LEN - 1 - in; 4fb84: 00c1ffc4 movi r3,2047 4fb88: e0bff917 ldw r2,-28(fp) 4fb8c: 1885c83a sub r2,r3,r2 4fb90: e0bff615 stw r2,-40(fp) if (n == 0) 4fb94: e0bff617 ldw r2,-40(fp) 4fb98: 10001e26 beq r2,zero,4fc14 break; if (n > count) 4fb9c: e0fffe17 ldw r3,-8(fp) 4fba0: e0bff617 ldw r2,-40(fp) 4fba4: 1880022e bgeu r3,r2,4fbb0 n = count; 4fba8: e0bffe17 ldw r2,-8(fp) 4fbac: e0bff615 stw r2,-40(fp) memcpy(sp->tx_buf + in, ptr, n); 4fbb0: e0bffc17 ldw r2,-16(fp) 4fbb4: 10c20e04 addi r3,r2,2104 4fbb8: e0bff917 ldw r2,-28(fp) 4fbbc: 1885883a add r2,r3,r2 4fbc0: e1bff617 ldw r6,-40(fp) 4fbc4: e17ffd17 ldw r5,-12(fp) 4fbc8: 1009883a mov r4,r2 4fbcc: 00476c00 call 476c0 ptr += n; 4fbd0: e0fffd17 ldw r3,-12(fp) 4fbd4: e0bff617 ldw r2,-40(fp) 4fbd8: 1885883a add r2,r3,r2 4fbdc: e0bffd15 stw r2,-12(fp) count -= n; 4fbe0: e0fffe17 ldw r3,-8(fp) 4fbe4: e0bff617 ldw r2,-40(fp) 4fbe8: 1885c83a sub r2,r3,r2 4fbec: e0bffe15 stw r2,-8(fp) sp->tx_in = (in + n) % ALTERA_AVALON_JTAG_UART_BUF_LEN; 4fbf0: e0fff917 ldw r3,-28(fp) 4fbf4: e0bff617 ldw r2,-40(fp) 4fbf8: 1885883a add r2,r3,r2 4fbfc: 10c1ffcc andi r3,r2,2047 4fc00: e0bffc17 ldw r2,-16(fp) 4fc04: 10c00c15 stw r3,48(r2) ALT_SEM_PEND (sp->write_lock, 0); do { /* Copy as much as we can into the transmit buffer */ while (count > 0) 4fc08: e0bffe17 ldw r2,-8(fp) 4fc0c: 00bfc716 blt zero,r2,4fb2c <__alt_data_end+0xfffddb2c> 4fc10: 00000106 br 4fc18 n = ALTERA_AVALON_JTAG_UART_BUF_LEN - in; else n = ALTERA_AVALON_JTAG_UART_BUF_LEN - 1 - in; if (n == 0) break; 4fc14: 0001883a nop static ALT_INLINE alt_irq_context ALT_ALWAYS_INLINE alt_irq_disable_all (void) { alt_irq_context context; NIOS2_READ_STATUS (context); 4fc18: 0005303a rdctl r2,status 4fc1c: e0bffb15 stw r2,-20(fp) NIOS2_WRITE_STATUS (context & ~NIOS2_STATUS_PIE_MSK); 4fc20: e0fffb17 ldw r3,-20(fp) 4fc24: 00bfff84 movi r2,-2 4fc28: 1884703a and r2,r3,r2 4fc2c: 1001703a wrctl status,r2 return context; 4fc30: e0bffb17 ldw r2,-20(fp) * to enable interrupts if there is no space left in the FIFO * * For now kick the interrupt routine every time to make it transmit * the data */ context = alt_irq_disable_all(); 4fc34: e0bffa15 stw r2,-24(fp) sp->irq_enable |= ALTERA_AVALON_JTAG_UART_CONTROL_WE_MSK; 4fc38: e0bffc17 ldw r2,-16(fp) 4fc3c: 10800817 ldw r2,32(r2) 4fc40: 10c00094 ori r3,r2,2 4fc44: e0bffc17 ldw r2,-16(fp) 4fc48: 10c00815 stw r3,32(r2) IOWR_ALTERA_AVALON_JTAG_UART_CONTROL(sp->base, sp->irq_enable); 4fc4c: e0bffc17 ldw r2,-16(fp) 4fc50: 10800017 ldw r2,0(r2) 4fc54: 10800104 addi r2,r2,4 4fc58: 1007883a mov r3,r2 4fc5c: e0bffc17 ldw r2,-16(fp) 4fc60: 10800817 ldw r2,32(r2) 4fc64: 18800035 stwio r2,0(r3) 4fc68: e0bffa17 ldw r2,-24(fp) 4fc6c: e0bff815 stw r2,-32(fp) status &= ~NIOS2_STATUS_PIE_MSK; status |= (context & NIOS2_STATUS_PIE_MSK); NIOS2_WRITE_STATUS (status); #else NIOS2_WRITE_STATUS (context); 4fc70: e0bff817 ldw r2,-32(fp) 4fc74: 1001703a wrctl status,r2 /* * If there is any data left then either return now or block until * some has been sent */ /* consider: test whether there is anything there while doing this and delay for at most 2s. */ if (count > 0) 4fc78: e0bffe17 ldw r2,-8(fp) 4fc7c: 0080100e bge zero,r2,4fcc0 { if (flags & O_NONBLOCK) 4fc80: e0bfff17 ldw r2,-4(fp) 4fc84: 1090000c andi r2,r2,16384 4fc88: 1000101e bne r2,zero,4fccc /* * No OS present: Always wait for data to be removed from buffer. Once * the interrupt routine has removed some data then we will be able to * insert some more. */ while (out == sp->tx_out && sp->host_inactive < sp->timeout) 4fc8c: 0001883a nop 4fc90: e0bffc17 ldw r2,-16(fp) 4fc94: 10c00d17 ldw r3,52(r2) 4fc98: e0bff517 ldw r2,-44(fp) 4fc9c: 1880051e bne r3,r2,4fcb4 4fca0: e0bffc17 ldw r2,-16(fp) 4fca4: 10c00917 ldw r3,36(r2) 4fca8: e0bffc17 ldw r2,-16(fp) 4fcac: 10800117 ldw r2,4(r2) 4fcb0: 18bff736 bltu r3,r2,4fc90 <__alt_data_end+0xfffddc90> ; #endif /* __ucosii__ */ if (sp->host_inactive) 4fcb4: e0bffc17 ldw r2,-16(fp) 4fcb8: 10800917 ldw r2,36(r2) 4fcbc: 1000051e bne r2,zero,4fcd4 break; } } while (count > 0); 4fcc0: e0bffe17 ldw r2,-8(fp) 4fcc4: 00bfd016 blt zero,r2,4fc08 <__alt_data_end+0xfffddc08> 4fcc8: 00000306 br 4fcd8 */ /* consider: test whether there is anything there while doing this and delay for at most 2s. */ if (count > 0) { if (flags & O_NONBLOCK) break; 4fccc: 0001883a nop 4fcd0: 00000106 br 4fcd8 while (out == sp->tx_out && sp->host_inactive < sp->timeout) ; #endif /* __ucosii__ */ if (sp->host_inactive) break; 4fcd4: 0001883a nop * Now that access to the circular buffer is complete, release the write * semaphore so that other threads can access the buffer. */ ALT_SEM_POST (sp->write_lock); if (ptr != start) 4fcd8: e0fffd17 ldw r3,-12(fp) 4fcdc: e0bff717 ldw r2,-36(fp) 4fce0: 18800426 beq r3,r2,4fcf4 return ptr - start; 4fce4: e0fffd17 ldw r3,-12(fp) 4fce8: e0bff717 ldw r2,-36(fp) 4fcec: 1885c83a sub r2,r3,r2 4fcf0: 00000606 br 4fd0c else if (flags & O_NONBLOCK) 4fcf4: e0bfff17 ldw r2,-4(fp) 4fcf8: 1090000c andi r2,r2,16384 4fcfc: 10000226 beq r2,zero,4fd08 return -EWOULDBLOCK; 4fd00: 00bffd44 movi r2,-11 4fd04: 00000106 br 4fd0c sp->tx_out = sp->tx_in = 0; return ptr - start + count; } #endif else return -EIO; /* Host not connected */ 4fd08: 00bffec4 movi r2,-5 } 4fd0c: e037883a mov sp,fp 4fd10: dfc00117 ldw ra,4(sp) 4fd14: df000017 ldw fp,0(sp) 4fd18: dec00204 addi sp,sp,8 4fd1c: f800283a ret 0004fd20 : /* --------------------------------------------------------------------- */ static void lcd_write_command(altera_avalon_lcd_16207_state* sp, unsigned char command) { 4fd20: defffa04 addi sp,sp,-24 4fd24: dfc00515 stw ra,20(sp) 4fd28: df000415 stw fp,16(sp) 4fd2c: df000404 addi fp,sp,16 4fd30: e13ffe15 stw r4,-8(fp) 4fd34: 2805883a mov r2,r5 4fd38: e0bfff05 stb r2,-4(fp) unsigned int base = sp->base; 4fd3c: e0bffe17 ldw r2,-8(fp) 4fd40: 10800017 ldw r2,0(r2) 4fd44: e0bffd15 stw r2,-12(fp) /* We impose a timeout on the driver in case the LCD panel isn't connected. * The first time we call this function the timeout is approx 25ms * (assuming 5 cycles per loop and a 200MHz clock). Obviously systems * with slower clocks, or debug builds, or slower memory will take longer. */ int i = 1000000; 4fd48: 008003f4 movhi r2,15 4fd4c: 10909004 addi r2,r2,16960 4fd50: e0bffc15 stw r2,-16(fp) /* Don't bother if the LCD panel didn't work before */ if (sp->broken) 4fd54: e0bffe17 ldw r2,-8(fp) 4fd58: 10800803 ldbu r2,32(r2) 4fd5c: 10803fcc andi r2,r2,255 4fd60: 1080201c xori r2,r2,128 4fd64: 10bfe004 addi r2,r2,-128 4fd68: 1000151e bne r2,zero,4fdc0 return; /* Wait until LCD isn't busy. */ while (IORD_ALTERA_AVALON_LCD_16207_STATUS(base) & ALTERA_AVALON_LCD_16207_STATUS_BUSY_MSK) 4fd6c: 00000906 br 4fd94 if (--i == 0) 4fd70: e0bffc17 ldw r2,-16(fp) 4fd74: 10bfffc4 addi r2,r2,-1 4fd78: e0bffc15 stw r2,-16(fp) 4fd7c: e0bffc17 ldw r2,-16(fp) 4fd80: 1000041e bne r2,zero,4fd94 { sp->broken = 1; 4fd84: e0bffe17 ldw r2,-8(fp) 4fd88: 00c00044 movi r3,1 4fd8c: 10c00805 stb r3,32(r2) return; 4fd90: 00000c06 br 4fdc4 /* Don't bother if the LCD panel didn't work before */ if (sp->broken) return; /* Wait until LCD isn't busy. */ while (IORD_ALTERA_AVALON_LCD_16207_STATUS(base) & ALTERA_AVALON_LCD_16207_STATUS_BUSY_MSK) 4fd94: e0bffd17 ldw r2,-12(fp) 4fd98: 10800104 addi r2,r2,4 4fd9c: 10800037 ldwio r2,0(r2) 4fda0: 1080200c andi r2,r2,128 4fda4: 103ff21e bne r2,zero,4fd70 <__alt_data_end+0xfffddd70> } /* Despite what it says in the datasheet, the LCD isn't ready to accept * a write immediately after it returns BUSY=0. Wait for 100us more. */ usleep(100); 4fda8: 01001904 movi r4,100 4fdac: 00518000 call 51800 IOWR_ALTERA_AVALON_LCD_16207_COMMAND(base, command); 4fdb0: e0bffd17 ldw r2,-12(fp) 4fdb4: e0ffff03 ldbu r3,-4(fp) 4fdb8: 10c00035 stwio r3,0(r2) 4fdbc: 00000106 br 4fdc4 */ int i = 1000000; /* Don't bother if the LCD panel didn't work before */ if (sp->broken) return; 4fdc0: 0001883a nop * a write immediately after it returns BUSY=0. Wait for 100us more. */ usleep(100); IOWR_ALTERA_AVALON_LCD_16207_COMMAND(base, command); } 4fdc4: e037883a mov sp,fp 4fdc8: dfc00117 ldw ra,4(sp) 4fdcc: df000017 ldw fp,0(sp) 4fdd0: dec00204 addi sp,sp,8 4fdd4: f800283a ret 0004fdd8 : /* --------------------------------------------------------------------- */ static void lcd_write_data(altera_avalon_lcd_16207_state* sp, unsigned char data) { 4fdd8: defffa04 addi sp,sp,-24 4fddc: dfc00515 stw ra,20(sp) 4fde0: df000415 stw fp,16(sp) 4fde4: df000404 addi fp,sp,16 4fde8: e13ffe15 stw r4,-8(fp) 4fdec: 2805883a mov r2,r5 4fdf0: e0bfff05 stb r2,-4(fp) unsigned int base = sp->base; 4fdf4: e0bffe17 ldw r2,-8(fp) 4fdf8: 10800017 ldw r2,0(r2) 4fdfc: e0bffd15 stw r2,-12(fp) /* We impose a timeout on the driver in case the LCD panel isn't connected. * The first time we call this function the timeout is approx 25ms * (assuming 5 cycles per loop and a 200MHz clock). Obviously systems * with slower clocks, or debug builds, or slower memory will take longer. */ int i = 1000000; 4fe00: 008003f4 movhi r2,15 4fe04: 10909004 addi r2,r2,16960 4fe08: e0bffc15 stw r2,-16(fp) /* Don't bother if the LCD panel didn't work before */ if (sp->broken) 4fe0c: e0bffe17 ldw r2,-8(fp) 4fe10: 10800803 ldbu r2,32(r2) 4fe14: 10803fcc andi r2,r2,255 4fe18: 1080201c xori r2,r2,128 4fe1c: 10bfe004 addi r2,r2,-128 4fe20: 10001d1e bne r2,zero,4fe98 return; /* Wait until LCD isn't busy. */ while (IORD_ALTERA_AVALON_LCD_16207_STATUS(base) & ALTERA_AVALON_LCD_16207_STATUS_BUSY_MSK) 4fe24: 00000906 br 4fe4c if (--i == 0) 4fe28: e0bffc17 ldw r2,-16(fp) 4fe2c: 10bfffc4 addi r2,r2,-1 4fe30: e0bffc15 stw r2,-16(fp) 4fe34: e0bffc17 ldw r2,-16(fp) 4fe38: 1000041e bne r2,zero,4fe4c { sp->broken = 1; 4fe3c: e0bffe17 ldw r2,-8(fp) 4fe40: 00c00044 movi r3,1 4fe44: 10c00805 stb r3,32(r2) return; 4fe48: 00001406 br 4fe9c /* Don't bother if the LCD panel didn't work before */ if (sp->broken) return; /* Wait until LCD isn't busy. */ while (IORD_ALTERA_AVALON_LCD_16207_STATUS(base) & ALTERA_AVALON_LCD_16207_STATUS_BUSY_MSK) 4fe4c: e0bffd17 ldw r2,-12(fp) 4fe50: 10800104 addi r2,r2,4 4fe54: 10800037 ldwio r2,0(r2) 4fe58: 1080200c andi r2,r2,128 4fe5c: 103ff21e bne r2,zero,4fe28 <__alt_data_end+0xfffdde28> } /* Despite what it says in the datasheet, the LCD isn't ready to accept * a write immediately after it returns BUSY=0. Wait for 100us more. */ usleep(100); 4fe60: 01001904 movi r4,100 4fe64: 00518000 call 51800 IOWR_ALTERA_AVALON_LCD_16207_DATA(base, data); 4fe68: e0bffd17 ldw r2,-12(fp) 4fe6c: 10800204 addi r2,r2,8 4fe70: 1007883a mov r3,r2 4fe74: e0bfff03 ldbu r2,-4(fp) 4fe78: 18800035 stwio r2,0(r3) sp->address++; 4fe7c: e0bffe17 ldw r2,-8(fp) 4fe80: 108008c3 ldbu r2,35(r2) 4fe84: 10800044 addi r2,r2,1 4fe88: 1007883a mov r3,r2 4fe8c: e0bffe17 ldw r2,-8(fp) 4fe90: 10c008c5 stb r3,35(r2) 4fe94: 00000106 br 4fe9c */ int i = 1000000; /* Don't bother if the LCD panel didn't work before */ if (sp->broken) return; 4fe98: 0001883a nop usleep(100); IOWR_ALTERA_AVALON_LCD_16207_DATA(base, data); sp->address++; } 4fe9c: e037883a mov sp,fp 4fea0: dfc00117 ldw ra,4(sp) 4fea4: df000017 ldw fp,0(sp) 4fea8: dec00204 addi sp,sp,8 4feac: f800283a ret 0004feb0 : /* --------------------------------------------------------------------- */ static void lcd_clear_screen(altera_avalon_lcd_16207_state* sp) { 4feb0: defffb04 addi sp,sp,-20 4feb4: dfc00415 stw ra,16(sp) 4feb8: df000315 stw fp,12(sp) 4febc: dc000215 stw r16,8(sp) 4fec0: df000304 addi fp,sp,12 4fec4: e13ffe15 stw r4,-8(fp) int y; lcd_write_command(sp, LCD_CMD_CLEAR); 4fec8: 01400044 movi r5,1 4fecc: e13ffe17 ldw r4,-8(fp) 4fed0: 004fd200 call 4fd20 sp->x = 0; 4fed4: e0bffe17 ldw r2,-8(fp) 4fed8: 10000845 stb zero,33(r2) sp->y = 0; 4fedc: e0bffe17 ldw r2,-8(fp) 4fee0: 10000885 stb zero,34(r2) sp->address = 0; 4fee4: e0bffe17 ldw r2,-8(fp) 4fee8: 100008c5 stb zero,35(r2) for (y = 0 ; y < ALT_LCD_HEIGHT ; y++) 4feec: e03ffd15 stw zero,-12(fp) 4fef0: 00001f06 br 4ff70 { memset(sp->line[y].data, ' ', sizeof(sp->line[0].data)); 4fef4: 014018c4 movi r5,99 4fef8: e13ffd17 ldw r4,-12(fp) 4fefc: 004c9f80 call 4c9f8 <__mulsi3> 4ff00: 10801004 addi r2,r2,64 4ff04: e0fffe17 ldw r3,-8(fp) 4ff08: 1885883a add r2,r3,r2 4ff0c: 01801444 movi r6,81 4ff10: 01400804 movi r5,32 4ff14: 1009883a mov r4,r2 4ff18: 00478080 call 47808 memset(sp->line[y].visible, ' ', sizeof(sp->line[0].visible)); 4ff1c: 014018c4 movi r5,99 4ff20: e13ffd17 ldw r4,-12(fp) 4ff24: 004c9f80 call 4c9f8 <__mulsi3> 4ff28: 10800c04 addi r2,r2,48 4ff2c: e0fffe17 ldw r3,-8(fp) 4ff30: 1885883a add r2,r3,r2 4ff34: 01800404 movi r6,16 4ff38: 01400804 movi r5,32 4ff3c: 1009883a mov r4,r2 4ff40: 00478080 call 47808 sp->line[y].width = 0; 4ff44: e43ffe17 ldw r16,-8(fp) 4ff48: e0bffd17 ldw r2,-12(fp) 4ff4c: 014018c4 movi r5,99 4ff50: 1009883a mov r4,r2 4ff54: 004c9f80 call 4c9f8 <__mulsi3> 4ff58: 8085883a add r2,r16,r2 4ff5c: 10802444 addi r2,r2,145 4ff60: 10000005 stb zero,0(r2) sp->x = 0; sp->y = 0; sp->address = 0; for (y = 0 ; y < ALT_LCD_HEIGHT ; y++) 4ff64: e0bffd17 ldw r2,-12(fp) 4ff68: 10800044 addi r2,r2,1 4ff6c: e0bffd15 stw r2,-12(fp) 4ff70: e0bffd17 ldw r2,-12(fp) 4ff74: 10800090 cmplti r2,r2,2 4ff78: 103fde1e bne r2,zero,4fef4 <__alt_data_end+0xfffddef4> { memset(sp->line[y].data, ' ', sizeof(sp->line[0].data)); memset(sp->line[y].visible, ' ', sizeof(sp->line[0].visible)); sp->line[y].width = 0; } } 4ff7c: 0001883a nop 4ff80: e6ffff04 addi sp,fp,-4 4ff84: dfc00217 ldw ra,8(sp) 4ff88: df000117 ldw fp,4(sp) 4ff8c: dc000017 ldw r16,0(sp) 4ff90: dec00304 addi sp,sp,12 4ff94: f800283a ret 0004ff98 : /* --------------------------------------------------------------------- */ static void lcd_repaint_screen(altera_avalon_lcd_16207_state* sp) { 4ff98: defff504 addi sp,sp,-44 4ff9c: dfc00a15 stw ra,40(sp) 4ffa0: df000915 stw fp,36(sp) 4ffa4: dc400815 stw r17,32(sp) 4ffa8: dc000715 stw r16,28(sp) 4ffac: df000904 addi fp,sp,36 4ffb0: e13ffd15 stw r4,-12(fp) /* scrollpos controls how much the lines have scrolled round. The speed * each line scrolls at is controlled by its speed variable - while * scrolline lines will wrap at the position set by width */ int scrollpos = sp->scrollpos; 4ffb4: e0bffd17 ldw r2,-12(fp) 4ffb8: 10800943 ldbu r2,37(r2) 4ffbc: 10803fcc andi r2,r2,255 4ffc0: e0bffa15 stw r2,-24(fp) for (y = 0 ; y < ALT_LCD_HEIGHT ; y++) 4ffc4: e03ff715 stw zero,-36(fp) 4ffc8: 00007206 br 50194 { int width = sp->line[y].width; 4ffcc: e43ffd17 ldw r16,-12(fp) 4ffd0: e0bff717 ldw r2,-36(fp) 4ffd4: 014018c4 movi r5,99 4ffd8: 1009883a mov r4,r2 4ffdc: 004c9f80 call 4c9f8 <__mulsi3> 4ffe0: 8085883a add r2,r16,r2 4ffe4: 10802444 addi r2,r2,145 4ffe8: 10800003 ldbu r2,0(r2) 4ffec: 10803fcc andi r2,r2,255 4fff0: 1080201c xori r2,r2,128 4fff4: 10bfe004 addi r2,r2,-128 4fff8: e0bffb15 stw r2,-20(fp) int offset = (scrollpos * sp->line[y].speed) >> 8; 4fffc: e43ffd17 ldw r16,-12(fp) 50000: e0bff717 ldw r2,-36(fp) 50004: 014018c4 movi r5,99 50008: 1009883a mov r4,r2 5000c: 004c9f80 call 4c9f8 <__mulsi3> 50010: 8085883a add r2,r16,r2 50014: 10802484 addi r2,r2,146 50018: 10800003 ldbu r2,0(r2) 5001c: 10803fcc andi r2,r2,255 50020: e17ffa17 ldw r5,-24(fp) 50024: 1009883a mov r4,r2 50028: 004c9f80 call 4c9f8 <__mulsi3> 5002c: 1005d23a srai r2,r2,8 50030: e0bff915 stw r2,-28(fp) if (offset >= width) 50034: e0fff917 ldw r3,-28(fp) 50038: e0bffb17 ldw r2,-20(fp) 5003c: 18800116 blt r3,r2,50044 offset = 0; 50040: e03ff915 stw zero,-28(fp) for (x = 0 ; x < ALT_LCD_WIDTH ; x++) 50044: e03ff815 stw zero,-32(fp) 50048: 00004c06 br 5017c { char c = sp->line[y].data[(x + offset) % width]; 5004c: e0fff817 ldw r3,-32(fp) 50050: e0bff917 ldw r2,-28(fp) 50054: 1885883a add r2,r3,r2 50058: e17ffb17 ldw r5,-20(fp) 5005c: 1009883a mov r4,r2 50060: 004c8c80 call 4c8c8 <__modsi3> 50064: 1023883a mov r17,r2 50068: e43ffd17 ldw r16,-12(fp) 5006c: e0bff717 ldw r2,-36(fp) 50070: 014018c4 movi r5,99 50074: 1009883a mov r4,r2 50078: 004c9f80 call 4c9f8 <__mulsi3> 5007c: 8085883a add r2,r16,r2 50080: 1445883a add r2,r2,r17 50084: 10801004 addi r2,r2,64 50088: 10800003 ldbu r2,0(r2) 5008c: e0bffc05 stb r2,-16(fp) /* Writing data takes 40us, so don't do it unless required */ if (sp->line[y].visible[x] != c) 50090: e43ffd17 ldw r16,-12(fp) 50094: e0bff717 ldw r2,-36(fp) 50098: 014018c4 movi r5,99 5009c: 1009883a mov r4,r2 500a0: 004c9f80 call 4c9f8 <__mulsi3> 500a4: 8087883a add r3,r16,r2 500a8: e0bff817 ldw r2,-32(fp) 500ac: 1885883a add r2,r3,r2 500b0: 10800c04 addi r2,r2,48 500b4: 10800003 ldbu r2,0(r2) 500b8: 10c03fcc andi r3,r2,255 500bc: 18c0201c xori r3,r3,128 500c0: 18ffe004 addi r3,r3,-128 500c4: e0bffc07 ldb r2,-16(fp) 500c8: 18802926 beq r3,r2,50170 { unsigned char address = x + colstart[y]; 500cc: e0fff717 ldw r3,-36(fp) 500d0: d0a00d04 addi r2,gp,-32716 500d4: 1885883a add r2,r3,r2 500d8: 10800003 ldbu r2,0(r2) 500dc: 1007883a mov r3,r2 500e0: e0bff817 ldw r2,-32(fp) 500e4: 1885883a add r2,r3,r2 500e8: e0bffc45 stb r2,-15(fp) if (address != sp->address) 500ec: e0fffc43 ldbu r3,-15(fp) 500f0: e0bffd17 ldw r2,-12(fp) 500f4: 108008c3 ldbu r2,35(r2) 500f8: 10803fcc andi r2,r2,255 500fc: 1080201c xori r2,r2,128 50100: 10bfe004 addi r2,r2,-128 50104: 18800a26 beq r3,r2,50130 { lcd_write_command(sp, LCD_CMD_WRITE_DATA | address); 50108: e0fffc43 ldbu r3,-15(fp) 5010c: 00bfe004 movi r2,-128 50110: 1884b03a or r2,r3,r2 50114: 10803fcc andi r2,r2,255 50118: 100b883a mov r5,r2 5011c: e13ffd17 ldw r4,-12(fp) 50120: 004fd200 call 4fd20 sp->address = address; 50124: e0fffc43 ldbu r3,-15(fp) 50128: e0bffd17 ldw r2,-12(fp) 5012c: 10c008c5 stb r3,35(r2) } lcd_write_data(sp, c); 50130: e0bffc03 ldbu r2,-16(fp) 50134: 10803fcc andi r2,r2,255 50138: 100b883a mov r5,r2 5013c: e13ffd17 ldw r4,-12(fp) 50140: 004fdd80 call 4fdd8 sp->line[y].visible[x] = c; 50144: e43ffd17 ldw r16,-12(fp) 50148: e0bff717 ldw r2,-36(fp) 5014c: 014018c4 movi r5,99 50150: 1009883a mov r4,r2 50154: 004c9f80 call 4c9f8 <__mulsi3> 50158: 8087883a add r3,r16,r2 5015c: e0bff817 ldw r2,-32(fp) 50160: 1885883a add r2,r3,r2 50164: 10800c04 addi r2,r2,48 50168: e0fffc03 ldbu r3,-16(fp) 5016c: 10c00005 stb r3,0(r2) int width = sp->line[y].width; int offset = (scrollpos * sp->line[y].speed) >> 8; if (offset >= width) offset = 0; for (x = 0 ; x < ALT_LCD_WIDTH ; x++) 50170: e0bff817 ldw r2,-32(fp) 50174: 10800044 addi r2,r2,1 50178: e0bff815 stw r2,-32(fp) 5017c: e0bff817 ldw r2,-32(fp) 50180: 10800410 cmplti r2,r2,16 50184: 103fb11e bne r2,zero,5004c <__alt_data_end+0xfffde04c> * scrolline lines will wrap at the position set by width */ int scrollpos = sp->scrollpos; for (y = 0 ; y < ALT_LCD_HEIGHT ; y++) 50188: e0bff717 ldw r2,-36(fp) 5018c: 10800044 addi r2,r2,1 50190: e0bff715 stw r2,-36(fp) 50194: e0bff717 ldw r2,-36(fp) 50198: 10800090 cmplti r2,r2,2 5019c: 103f8b1e bne r2,zero,4ffcc <__alt_data_end+0xfffddfcc> lcd_write_data(sp, c); sp->line[y].visible[x] = c; } } } } 501a0: 0001883a nop 501a4: e6fffe04 addi sp,fp,-8 501a8: dfc00317 ldw ra,12(sp) 501ac: df000217 ldw fp,8(sp) 501b0: dc400117 ldw r17,4(sp) 501b4: dc000017 ldw r16,0(sp) 501b8: dec00404 addi sp,sp,16 501bc: f800283a ret 000501c0 : /* --------------------------------------------------------------------- */ static void lcd_scroll_up(altera_avalon_lcd_16207_state* sp) { 501c0: defffb04 addi sp,sp,-20 501c4: dfc00415 stw ra,16(sp) 501c8: df000315 stw fp,12(sp) 501cc: dc000215 stw r16,8(sp) 501d0: df000304 addi fp,sp,12 501d4: e13ffe15 stw r4,-8(fp) int y; for (y = 0 ; y < ALT_LCD_HEIGHT ; y++) 501d8: e03ffd15 stw zero,-12(fp) 501dc: 00002206 br 50268 { if (y < ALT_LCD_HEIGHT-1) 501e0: e0bffd17 ldw r2,-12(fp) 501e4: 00801316 blt zero,r2,50234 memcpy(sp->line[y].data, sp->line[y+1].data, ALT_LCD_VIRTUAL_WIDTH); 501e8: 014018c4 movi r5,99 501ec: e13ffd17 ldw r4,-12(fp) 501f0: 004c9f80 call 4c9f8 <__mulsi3> 501f4: 10801004 addi r2,r2,64 501f8: e0fffe17 ldw r3,-8(fp) 501fc: 18a1883a add r16,r3,r2 50200: e0bffd17 ldw r2,-12(fp) 50204: 10800044 addi r2,r2,1 50208: 014018c4 movi r5,99 5020c: 1009883a mov r4,r2 50210: 004c9f80 call 4c9f8 <__mulsi3> 50214: 10801004 addi r2,r2,64 50218: e0fffe17 ldw r3,-8(fp) 5021c: 1885883a add r2,r3,r2 50220: 01801404 movi r6,80 50224: 100b883a mov r5,r2 50228: 8009883a mov r4,r16 5022c: 00476c00 call 476c0 50230: 00000a06 br 5025c else memset(sp->line[y].data, ' ', ALT_LCD_VIRTUAL_WIDTH); 50234: 014018c4 movi r5,99 50238: e13ffd17 ldw r4,-12(fp) 5023c: 004c9f80 call 4c9f8 <__mulsi3> 50240: 10801004 addi r2,r2,64 50244: e0fffe17 ldw r3,-8(fp) 50248: 1885883a add r2,r3,r2 5024c: 01801404 movi r6,80 50250: 01400804 movi r5,32 50254: 1009883a mov r4,r2 50258: 00478080 call 47808 static void lcd_scroll_up(altera_avalon_lcd_16207_state* sp) { int y; for (y = 0 ; y < ALT_LCD_HEIGHT ; y++) 5025c: e0bffd17 ldw r2,-12(fp) 50260: 10800044 addi r2,r2,1 50264: e0bffd15 stw r2,-12(fp) 50268: e0bffd17 ldw r2,-12(fp) 5026c: 10800090 cmplti r2,r2,2 50270: 103fdb1e bne r2,zero,501e0 <__alt_data_end+0xfffde1e0> memcpy(sp->line[y].data, sp->line[y+1].data, ALT_LCD_VIRTUAL_WIDTH); else memset(sp->line[y].data, ' ', ALT_LCD_VIRTUAL_WIDTH); } sp->y--; 50274: e0bffe17 ldw r2,-8(fp) 50278: 10800883 ldbu r2,34(r2) 5027c: 10bfffc4 addi r2,r2,-1 50280: 1007883a mov r3,r2 50284: e0bffe17 ldw r2,-8(fp) 50288: 10c00885 stb r3,34(r2) } 5028c: 0001883a nop 50290: e6ffff04 addi sp,fp,-4 50294: dfc00217 ldw ra,8(sp) 50298: df000117 ldw fp,4(sp) 5029c: dc000017 ldw r16,0(sp) 502a0: dec00304 addi sp,sp,12 502a4: f800283a ret 000502a8 : /* --------------------------------------------------------------------- */ static void lcd_handle_escape(altera_avalon_lcd_16207_state* sp, char c) { 502a8: defff904 addi sp,sp,-28 502ac: dfc00615 stw ra,24(sp) 502b0: df000515 stw fp,20(sp) 502b4: df000504 addi fp,sp,20 502b8: e13ffe15 stw r4,-8(fp) 502bc: 2805883a mov r2,r5 502c0: e0bfff05 stb r2,-4(fp) int parm1 = 0, parm2 = 0; 502c4: e03ffb15 stw zero,-20(fp) 502c8: e03ffc15 stw zero,-16(fp) if (sp->escape[0] == '[') 502cc: e0bffe17 ldw r2,-8(fp) 502d0: 10800a03 ldbu r2,40(r2) 502d4: 10803fcc andi r2,r2,255 502d8: 1080201c xori r2,r2,128 502dc: 10bfe004 addi r2,r2,-128 502e0: 108016d8 cmpnei r2,r2,91 502e4: 1000451e bne r2,zero,503fc { char * ptr = sp->escape+1; 502e8: e0bffe17 ldw r2,-8(fp) 502ec: 10800a04 addi r2,r2,40 502f0: 10800044 addi r2,r2,1 502f4: e0bffd15 stw r2,-12(fp) while (isdigit(*ptr)) 502f8: 00000e06 br 50334 parm1 = (parm1 * 10) + (*ptr++ - '0'); 502fc: 01400284 movi r5,10 50300: e13ffb17 ldw r4,-20(fp) 50304: 004c9f80 call 4c9f8 <__mulsi3> 50308: 1009883a mov r4,r2 5030c: e0bffd17 ldw r2,-12(fp) 50310: 10c00044 addi r3,r2,1 50314: e0fffd15 stw r3,-12(fp) 50318: 10800003 ldbu r2,0(r2) 5031c: 10803fcc andi r2,r2,255 50320: 1080201c xori r2,r2,128 50324: 10bfe004 addi r2,r2,-128 50328: 10bff404 addi r2,r2,-48 5032c: 2085883a add r2,r4,r2 50330: e0bffb15 stw r2,-20(fp) int parm1 = 0, parm2 = 0; if (sp->escape[0] == '[') { char * ptr = sp->escape+1; while (isdigit(*ptr)) 50334: d0e01117 ldw r3,-32700(gp) 50338: e0bffd17 ldw r2,-12(fp) 5033c: 10800003 ldbu r2,0(r2) 50340: 10803fcc andi r2,r2,255 50344: 1080201c xori r2,r2,128 50348: 10bfe004 addi r2,r2,-128 5034c: 10800044 addi r2,r2,1 50350: 1885883a add r2,r3,r2 50354: 10800003 ldbu r2,0(r2) 50358: 10803fcc andi r2,r2,255 5035c: 1080010c andi r2,r2,4 50360: 103fe61e bne r2,zero,502fc <__alt_data_end+0xfffde2fc> parm1 = (parm1 * 10) + (*ptr++ - '0'); if (*ptr == ';') 50364: e0bffd17 ldw r2,-12(fp) 50368: 10800003 ldbu r2,0(r2) 5036c: 10803fcc andi r2,r2,255 50370: 1080201c xori r2,r2,128 50374: 10bfe004 addi r2,r2,-128 50378: 10800ed8 cmpnei r2,r2,59 5037c: 1000211e bne r2,zero,50404 { ptr++; 50380: e0bffd17 ldw r2,-12(fp) 50384: 10800044 addi r2,r2,1 50388: e0bffd15 stw r2,-12(fp) while (isdigit(*ptr)) 5038c: 00000e06 br 503c8 parm2 = (parm2 * 10) + (*ptr++ - '0'); 50390: 01400284 movi r5,10 50394: e13ffc17 ldw r4,-16(fp) 50398: 004c9f80 call 4c9f8 <__mulsi3> 5039c: 1009883a mov r4,r2 503a0: e0bffd17 ldw r2,-12(fp) 503a4: 10c00044 addi r3,r2,1 503a8: e0fffd15 stw r3,-12(fp) 503ac: 10800003 ldbu r2,0(r2) 503b0: 10803fcc andi r2,r2,255 503b4: 1080201c xori r2,r2,128 503b8: 10bfe004 addi r2,r2,-128 503bc: 10bff404 addi r2,r2,-48 503c0: 2085883a add r2,r4,r2 503c4: e0bffc15 stw r2,-16(fp) parm1 = (parm1 * 10) + (*ptr++ - '0'); if (*ptr == ';') { ptr++; while (isdigit(*ptr)) 503c8: d0e01117 ldw r3,-32700(gp) 503cc: e0bffd17 ldw r2,-12(fp) 503d0: 10800003 ldbu r2,0(r2) 503d4: 10803fcc andi r2,r2,255 503d8: 1080201c xori r2,r2,128 503dc: 10bfe004 addi r2,r2,-128 503e0: 10800044 addi r2,r2,1 503e4: 1885883a add r2,r3,r2 503e8: 10800003 ldbu r2,0(r2) 503ec: 10803fcc andi r2,r2,255 503f0: 1080010c andi r2,r2,4 503f4: 103fe61e bne r2,zero,50390 <__alt_data_end+0xfffde390> 503f8: 00000206 br 50404 parm2 = (parm2 * 10) + (*ptr++ - '0'); } } else parm1 = -1; 503fc: 00bfffc4 movi r2,-1 50400: e0bffb15 stw r2,-20(fp) switch (c) 50404: e0bfff07 ldb r2,-4(fp) 50408: 10c012a0 cmpeqi r3,r2,74 5040c: 1800291e bne r3,zero,504b4 50410: 10c012c8 cmpgei r3,r2,75 50414: 1800031e bne r3,zero,50424 50418: 10801220 cmpeqi r2,r2,72 5041c: 1000061e bne r2,zero,50438 if (sp->x < ALT_LCD_VIRTUAL_WIDTH) memset(sp->line[sp->y].data + sp->x, ' ', ALT_LCD_VIRTUAL_WIDTH - sp->x); } break; } } 50420: 00004c06 br 50554 } } else parm1 = -1; switch (c) 50424: 10c012e0 cmpeqi r3,r2,75 50428: 1800281e bne r3,zero,504cc 5042c: 108019a0 cmpeqi r2,r2,102 50430: 1000011e bne r2,zero,50438 if (sp->x < ALT_LCD_VIRTUAL_WIDTH) memset(sp->line[sp->y].data + sp->x, ' ', ALT_LCD_VIRTUAL_WIDTH - sp->x); } break; } } 50434: 00004706 br 50554 switch (c) { case 'H': /* ESC '[' ';' 'H' : Move cursor to location */ case 'f': /* Same as above */ if (parm2 > 0) 50438: e0bffc17 ldw r2,-16(fp) 5043c: 0080050e bge zero,r2,50454 sp->x = parm2 - 1; 50440: e0bffc17 ldw r2,-16(fp) 50444: 10bfffc4 addi r2,r2,-1 50448: 1007883a mov r3,r2 5044c: e0bffe17 ldw r2,-8(fp) 50450: 10c00845 stb r3,33(r2) if (parm1 > 0) 50454: e0bffb17 ldw r2,-20(fp) 50458: 0080390e bge zero,r2,50540 { sp->y = parm1 - 1; 5045c: e0bffb17 ldw r2,-20(fp) 50460: 10bfffc4 addi r2,r2,-1 50464: 1007883a mov r3,r2 50468: e0bffe17 ldw r2,-8(fp) 5046c: 10c00885 stb r3,34(r2) if (sp->y > ALT_LCD_HEIGHT * 2) 50470: e0bffe17 ldw r2,-8(fp) 50474: 10800883 ldbu r2,34(r2) 50478: 10803fcc andi r2,r2,255 5047c: 10800170 cmpltui r2,r2,5 50480: 1000061e bne r2,zero,5049c sp->y = ALT_LCD_HEIGHT * 2; 50484: e0bffe17 ldw r2,-8(fp) 50488: 00c00104 movi r3,4 5048c: 10c00885 stb r3,34(r2) while (sp->y > ALT_LCD_HEIGHT) 50490: 00000206 br 5049c lcd_scroll_up(sp); 50494: e13ffe17 ldw r4,-8(fp) 50498: 00501c00 call 501c0 if (parm1 > 0) { sp->y = parm1 - 1; if (sp->y > ALT_LCD_HEIGHT * 2) sp->y = ALT_LCD_HEIGHT * 2; while (sp->y > ALT_LCD_HEIGHT) 5049c: e0bffe17 ldw r2,-8(fp) 504a0: 10800883 ldbu r2,34(r2) 504a4: 10803fcc andi r2,r2,255 504a8: 108000e8 cmpgeui r2,r2,3 504ac: 103ff91e bne r2,zero,50494 <__alt_data_end+0xfffde494> lcd_scroll_up(sp); } break; 504b0: 00002306 br 50540 /* ESC J is clear to beginning of line [unimplemented] * ESC [ 0 J is clear to bottom of screen [unimplemented] * ESC [ 1 J is clear to beginning of screen [unimplemented] * ESC [ 2 J is clear screen */ if (parm1 == 2) 504b4: e0bffb17 ldw r2,-20(fp) 504b8: 10800098 cmpnei r2,r2,2 504bc: 1000221e bne r2,zero,50548 lcd_clear_screen(sp); 504c0: e13ffe17 ldw r4,-8(fp) 504c4: 004feb00 call 4feb0 break; 504c8: 00001f06 br 50548 /* ESC K is clear to end of line * ESC [ 0 K is clear to end of line * ESC [ 1 K is clear to beginning of line [unimplemented] * ESC [ 2 K is clear line [unimplemented] */ if (parm1 < 1) 504cc: e0bffb17 ldw r2,-20(fp) 504d0: 00801f16 blt zero,r2,50550 { if (sp->x < ALT_LCD_VIRTUAL_WIDTH) 504d4: e0bffe17 ldw r2,-8(fp) 504d8: 10800843 ldbu r2,33(r2) 504dc: 10803fcc andi r2,r2,255 504e0: 10801428 cmpgeui r2,r2,80 504e4: 10001a1e bne r2,zero,50550 memset(sp->line[sp->y].data + sp->x, ' ', ALT_LCD_VIRTUAL_WIDTH - sp->x); 504e8: e0bffe17 ldw r2,-8(fp) 504ec: 10800883 ldbu r2,34(r2) 504f0: 10803fcc andi r2,r2,255 504f4: 014018c4 movi r5,99 504f8: 1009883a mov r4,r2 504fc: 004c9f80 call 4c9f8 <__mulsi3> 50500: 10801004 addi r2,r2,64 50504: e0fffe17 ldw r3,-8(fp) 50508: 1887883a add r3,r3,r2 5050c: e0bffe17 ldw r2,-8(fp) 50510: 10800843 ldbu r2,33(r2) 50514: 10803fcc andi r2,r2,255 50518: 1889883a add r4,r3,r2 5051c: e0bffe17 ldw r2,-8(fp) 50520: 10800843 ldbu r2,33(r2) 50524: 10803fcc andi r2,r2,255 50528: 00c01404 movi r3,80 5052c: 1885c83a sub r2,r3,r2 50530: 100d883a mov r6,r2 50534: 01400804 movi r5,32 50538: 00478080 call 47808 } break; 5053c: 00000406 br 50550 if (sp->y > ALT_LCD_HEIGHT * 2) sp->y = ALT_LCD_HEIGHT * 2; while (sp->y > ALT_LCD_HEIGHT) lcd_scroll_up(sp); } break; 50540: 0001883a nop 50544: 00000306 br 50554 * ESC [ 1 J is clear to beginning of screen [unimplemented] * ESC [ 2 J is clear screen */ if (parm1 == 2) lcd_clear_screen(sp); break; 50548: 0001883a nop 5054c: 00000106 br 50554 if (parm1 < 1) { if (sp->x < ALT_LCD_VIRTUAL_WIDTH) memset(sp->line[sp->y].data + sp->x, ' ', ALT_LCD_VIRTUAL_WIDTH - sp->x); } break; 50550: 0001883a nop } } 50554: 0001883a nop 50558: e037883a mov sp,fp 5055c: dfc00117 ldw ra,4(sp) 50560: df000017 ldw fp,0(sp) 50564: dec00204 addi sp,sp,8 50568: f800283a ret 0005056c : /* --------------------------------------------------------------------- */ int altera_avalon_lcd_16207_write(altera_avalon_lcd_16207_state* sp, const char* ptr, int len, int flags) { 5056c: defff104 addi sp,sp,-60 50570: dfc00e15 stw ra,56(sp) 50574: df000d15 stw fp,52(sp) 50578: dc400c15 stw r17,48(sp) 5057c: dc000b15 stw r16,44(sp) 50580: df000d04 addi fp,sp,52 50584: e13ffa15 stw r4,-24(fp) 50588: e17ffb15 stw r5,-20(fp) 5058c: e1bffc15 stw r6,-16(fp) 50590: e1fffd15 stw r7,-12(fp) const char* end = ptr + len; 50594: e0bffc17 ldw r2,-16(fp) 50598: e0fffb17 ldw r3,-20(fp) 5059c: 1885883a add r2,r3,r2 505a0: e0bff615 stw r2,-40(fp) ALT_SEM_PEND (sp->write_lock, 0); /* Tell the routine which is called off the timer interrupt that the * foreground routines are active so it must not repaint the display. */ sp->active = 1; 505a4: e0bffa17 ldw r2,-24(fp) 505a8: 00c00044 movi r3,1 505ac: 10c009c5 stb r3,39(r2) for ( ; ptr < end ; ptr++) 505b0: 00009b06 br 50820 { char c = *ptr; 505b4: e0bffb17 ldw r2,-20(fp) 505b8: 10800003 ldbu r2,0(r2) 505bc: e0bff705 stb r2,-36(fp) if (sp->esccount >= 0) 505c0: e0bffa17 ldw r2,-24(fp) 505c4: 10800903 ldbu r2,36(r2) 505c8: 10803fcc andi r2,r2,255 505cc: 1080201c xori r2,r2,128 505d0: 10bfe004 addi r2,r2,-128 505d4: 10003716 blt r2,zero,506b4 { unsigned int esccount = sp->esccount; 505d8: e0bffa17 ldw r2,-24(fp) 505dc: 10800903 ldbu r2,36(r2) 505e0: 10803fcc andi r2,r2,255 505e4: 1080201c xori r2,r2,128 505e8: 10bfe004 addi r2,r2,-128 505ec: e0bff815 stw r2,-32(fp) /* Single character escape sequences can end with any character * Multi character escape sequences start with '[' and contain * digits and semicolons before terminating */ if ((esccount == 0 && c != '[') || 505f0: e0bff817 ldw r2,-32(fp) 505f4: 1000031e bne r2,zero,50604 505f8: e0bff707 ldb r2,-36(fp) 505fc: 108016d8 cmpnei r2,r2,91 50600: 10000d1e bne r2,zero,50638 50604: e0bff817 ldw r2,-32(fp) 50608: 10001826 beq r2,zero,5066c (esccount > 0 && !isdigit(c) && c != ';')) 5060c: d0e01117 ldw r3,-32700(gp) 50610: e0bff707 ldb r2,-36(fp) 50614: 10800044 addi r2,r2,1 50618: 1885883a add r2,r3,r2 5061c: 10800003 ldbu r2,0(r2) 50620: 10803fcc andi r2,r2,255 50624: 1080010c andi r2,r2,4 50628: 1000101e bne r2,zero,5066c 5062c: e0bff707 ldb r2,-36(fp) 50630: 10800ee0 cmpeqi r2,r2,59 50634: 10000d1e bne r2,zero,5066c { sp->escape[esccount] = 0; 50638: e0fffa17 ldw r3,-24(fp) 5063c: e0bff817 ldw r2,-32(fp) 50640: 1885883a add r2,r3,r2 50644: 10800a04 addi r2,r2,40 50648: 10000005 stb zero,0(r2) lcd_handle_escape(sp, c); 5064c: e0bff707 ldb r2,-36(fp) 50650: 100b883a mov r5,r2 50654: e13ffa17 ldw r4,-24(fp) 50658: 00502a80 call 502a8 sp->esccount = -1; 5065c: e0bffa17 ldw r2,-24(fp) 50660: 00ffffc4 movi r3,-1 50664: 10c00905 stb r3,36(r2) 50668: 00006a06 br 50814 } else if (sp->esccount < sizeof(sp->escape)-1) 5066c: e0bffa17 ldw r2,-24(fp) 50670: 10800903 ldbu r2,36(r2) 50674: 10803fcc andi r2,r2,255 50678: 108001e8 cmpgeui r2,r2,7 5067c: 1000651e bne r2,zero,50814 { sp->escape[esccount] = c; 50680: e0fffa17 ldw r3,-24(fp) 50684: e0bff817 ldw r2,-32(fp) 50688: 1885883a add r2,r3,r2 5068c: 10800a04 addi r2,r2,40 50690: e0fff703 ldbu r3,-36(fp) 50694: 10c00005 stb r3,0(r2) sp->esccount++; 50698: e0bffa17 ldw r2,-24(fp) 5069c: 10800903 ldbu r2,36(r2) 506a0: 10800044 addi r2,r2,1 506a4: 1007883a mov r3,r2 506a8: e0bffa17 ldw r2,-24(fp) 506ac: 10c00905 stb r3,36(r2) 506b0: 00005806 br 50814 } } else if (c == 27) /* ESC */ 506b4: e0bff707 ldb r2,-36(fp) 506b8: 108006d8 cmpnei r2,r2,27 506bc: 1000031e bne r2,zero,506cc { sp->esccount = 0; 506c0: e0bffa17 ldw r2,-24(fp) 506c4: 10000905 stb zero,36(r2) 506c8: 00005206 br 50814 } else if (c == '\r') 506cc: e0bff707 ldb r2,-36(fp) 506d0: 10800358 cmpnei r2,r2,13 506d4: 1000031e bne r2,zero,506e4 { sp->x = 0; 506d8: e0bffa17 ldw r2,-24(fp) 506dc: 10000845 stb zero,33(r2) 506e0: 00004c06 br 50814 } else if (c == '\n') 506e4: e0bff707 ldb r2,-36(fp) 506e8: 10800298 cmpnei r2,r2,10 506ec: 1000101e bne r2,zero,50730 { sp->x = 0; 506f0: e0bffa17 ldw r2,-24(fp) 506f4: 10000845 stb zero,33(r2) sp->y++; 506f8: e0bffa17 ldw r2,-24(fp) 506fc: 10800883 ldbu r2,34(r2) 50700: 10800044 addi r2,r2,1 50704: 1007883a mov r3,r2 50708: e0bffa17 ldw r2,-24(fp) 5070c: 10c00885 stb r3,34(r2) /* Let the cursor sit at X=0, Y=HEIGHT without scrolling so the user * can print two lines of data without losing one. */ if (sp->y > ALT_LCD_HEIGHT) 50710: e0bffa17 ldw r2,-24(fp) 50714: 10800883 ldbu r2,34(r2) 50718: 10803fcc andi r2,r2,255 5071c: 108000f0 cmpltui r2,r2,3 50720: 10003c1e bne r2,zero,50814 lcd_scroll_up(sp); 50724: e13ffa17 ldw r4,-24(fp) 50728: 00501c00 call 501c0 5072c: 00003906 br 50814 } else if (c == '\b') 50730: e0bff707 ldb r2,-36(fp) 50734: 10800218 cmpnei r2,r2,8 50738: 10000b1e bne r2,zero,50768 { if (sp->x > 0) 5073c: e0bffa17 ldw r2,-24(fp) 50740: 10800843 ldbu r2,33(r2) 50744: 10803fcc andi r2,r2,255 50748: 10003226 beq r2,zero,50814 sp->x--; 5074c: e0bffa17 ldw r2,-24(fp) 50750: 10800843 ldbu r2,33(r2) 50754: 10bfffc4 addi r2,r2,-1 50758: 1007883a mov r3,r2 5075c: e0bffa17 ldw r2,-24(fp) 50760: 10c00845 stb r3,33(r2) 50764: 00002b06 br 50814 } else if (isprint(c)) 50768: d0e01117 ldw r3,-32700(gp) 5076c: e0bff707 ldb r2,-36(fp) 50770: 10800044 addi r2,r2,1 50774: 1885883a add r2,r3,r2 50778: 10800003 ldbu r2,0(r2) 5077c: 10803fcc andi r2,r2,255 50780: 1080201c xori r2,r2,128 50784: 10bfe004 addi r2,r2,-128 50788: 108025cc andi r2,r2,151 5078c: 10002126 beq r2,zero,50814 { /* If we didn't scroll on the last linefeed then we might need to do * it now. */ if (sp->y >= ALT_LCD_HEIGHT) 50790: e0bffa17 ldw r2,-24(fp) 50794: 10800883 ldbu r2,34(r2) 50798: 10803fcc andi r2,r2,255 5079c: 108000b0 cmpltui r2,r2,2 507a0: 1000021e bne r2,zero,507ac lcd_scroll_up(sp); 507a4: e13ffa17 ldw r4,-24(fp) 507a8: 00501c00 call 501c0 if (sp->x < ALT_LCD_VIRTUAL_WIDTH) 507ac: e0bffa17 ldw r2,-24(fp) 507b0: 10800843 ldbu r2,33(r2) 507b4: 10803fcc andi r2,r2,255 507b8: 10801428 cmpgeui r2,r2,80 507bc: 10000f1e bne r2,zero,507fc sp->line[sp->y].data[sp->x] = c; 507c0: e0bffa17 ldw r2,-24(fp) 507c4: 10800883 ldbu r2,34(r2) 507c8: 10c03fcc andi r3,r2,255 507cc: e0bffa17 ldw r2,-24(fp) 507d0: 10800843 ldbu r2,33(r2) 507d4: 14003fcc andi r16,r2,255 507d8: e47ffa17 ldw r17,-24(fp) 507dc: 014018c4 movi r5,99 507e0: 1809883a mov r4,r3 507e4: 004c9f80 call 4c9f8 <__mulsi3> 507e8: 8885883a add r2,r17,r2 507ec: 1405883a add r2,r2,r16 507f0: 10801004 addi r2,r2,64 507f4: e0fff703 ldbu r3,-36(fp) 507f8: 10c00005 stb r3,0(r2) sp->x++; 507fc: e0bffa17 ldw r2,-24(fp) 50800: 10800843 ldbu r2,33(r2) 50804: 10800044 addi r2,r2,1 50808: 1007883a mov r3,r2 5080c: e0bffa17 ldw r2,-24(fp) 50810: 10c00845 stb r3,33(r2) /* Tell the routine which is called off the timer interrupt that the * foreground routines are active so it must not repaint the display. */ sp->active = 1; for ( ; ptr < end ; ptr++) 50814: e0bffb17 ldw r2,-20(fp) 50818: 10800044 addi r2,r2,1 5081c: e0bffb15 stw r2,-20(fp) 50820: e0fffb17 ldw r3,-20(fp) 50824: e0bff617 ldw r2,-40(fp) 50828: 18bf6236 bltu r3,r2,505b4 <__alt_data_end+0xfffde5b4> sp->x++; } } /* Recalculate the scrolling parameters */ widthmax = ALT_LCD_WIDTH; 5082c: 00800404 movi r2,16 50830: e0bff415 stw r2,-48(fp) for (y = 0 ; y < ALT_LCD_HEIGHT ; y++) 50834: e03ff315 stw zero,-52(fp) 50838: 00003d06 br 50930 { int width; for (width = ALT_LCD_VIRTUAL_WIDTH ; width > 0 ; width--) 5083c: 00801404 movi r2,80 50840: e0bff515 stw r2,-44(fp) 50844: 00001306 br 50894 if (sp->line[y].data[width-1] != ' ') 50848: e0bff517 ldw r2,-44(fp) 5084c: 143fffc4 addi r16,r2,-1 50850: e47ffa17 ldw r17,-24(fp) 50854: e0bff317 ldw r2,-52(fp) 50858: 014018c4 movi r5,99 5085c: 1009883a mov r4,r2 50860: 004c9f80 call 4c9f8 <__mulsi3> 50864: 8885883a add r2,r17,r2 50868: 1405883a add r2,r2,r16 5086c: 10801004 addi r2,r2,64 50870: 10800003 ldbu r2,0(r2) 50874: 10803fcc andi r2,r2,255 50878: 1080201c xori r2,r2,128 5087c: 10bfe004 addi r2,r2,-128 50880: 10800820 cmpeqi r2,r2,32 50884: 10000626 beq r2,zero,508a0 /* Recalculate the scrolling parameters */ widthmax = ALT_LCD_WIDTH; for (y = 0 ; y < ALT_LCD_HEIGHT ; y++) { int width; for (width = ALT_LCD_VIRTUAL_WIDTH ; width > 0 ; width--) 50888: e0bff517 ldw r2,-44(fp) 5088c: 10bfffc4 addi r2,r2,-1 50890: e0bff515 stw r2,-44(fp) 50894: e0bff517 ldw r2,-44(fp) 50898: 00bfeb16 blt zero,r2,50848 <__alt_data_end+0xfffde848> 5089c: 00000106 br 508a4 if (sp->line[y].data[width-1] != ' ') break; 508a0: 0001883a nop /* The minimum width is the size of the LCD panel. If the real width * is long enough to require scrolling then add an extra space so the * end of the message doesn't run into the beginning of it. */ if (width <= ALT_LCD_WIDTH) 508a4: e0bff517 ldw r2,-44(fp) 508a8: 10800448 cmpgei r2,r2,17 508ac: 1000031e bne r2,zero,508bc width = ALT_LCD_WIDTH; 508b0: 00800404 movi r2,16 508b4: e0bff515 stw r2,-44(fp) 508b8: 00000306 br 508c8 else width++; 508bc: e0bff517 ldw r2,-44(fp) 508c0: 10800044 addi r2,r2,1 508c4: e0bff515 stw r2,-44(fp) sp->line[y].width = width; 508c8: e0bff517 ldw r2,-44(fp) 508cc: 1023883a mov r17,r2 508d0: e43ffa17 ldw r16,-24(fp) 508d4: e0bff317 ldw r2,-52(fp) 508d8: 014018c4 movi r5,99 508dc: 1009883a mov r4,r2 508e0: 004c9f80 call 4c9f8 <__mulsi3> 508e4: 8085883a add r2,r16,r2 508e8: 10802444 addi r2,r2,145 508ec: 14400005 stb r17,0(r2) if (widthmax < width) 508f0: e0fff417 ldw r3,-48(fp) 508f4: e0bff517 ldw r2,-44(fp) 508f8: 1880020e bge r3,r2,50904 widthmax = width; 508fc: e0bff517 ldw r2,-44(fp) 50900: e0bff415 stw r2,-48(fp) sp->line[y].speed = 0; /* By default lines don't scroll */ 50904: e43ffa17 ldw r16,-24(fp) 50908: e0bff317 ldw r2,-52(fp) 5090c: 014018c4 movi r5,99 50910: 1009883a mov r4,r2 50914: 004c9f80 call 4c9f8 <__mulsi3> 50918: 8085883a add r2,r16,r2 5091c: 10802484 addi r2,r2,146 50920: 10000005 stb zero,0(r2) } } /* Recalculate the scrolling parameters */ widthmax = ALT_LCD_WIDTH; for (y = 0 ; y < ALT_LCD_HEIGHT ; y++) 50924: e0bff317 ldw r2,-52(fp) 50928: 10800044 addi r2,r2,1 5092c: e0bff315 stw r2,-52(fp) 50930: e0bff317 ldw r2,-52(fp) 50934: 10800090 cmplti r2,r2,2 50938: 103fc01e bne r2,zero,5083c <__alt_data_end+0xfffde83c> if (widthmax < width) widthmax = width; sp->line[y].speed = 0; /* By default lines don't scroll */ } if (widthmax <= ALT_LCD_WIDTH) 5093c: e0bff417 ldw r2,-48(fp) 50940: 10800448 cmpgei r2,r2,17 50944: 1000031e bne r2,zero,50954 sp->scrollmax = 0; 50948: e0bffa17 ldw r2,-24(fp) 5094c: 10000985 stb zero,38(r2) 50950: 00003406 br 50a24 else { widthmax *= 2; 50954: e0bff417 ldw r2,-48(fp) 50958: 1085883a add r2,r2,r2 5095c: e0bff415 stw r2,-48(fp) sp->scrollmax = widthmax; 50960: e0bff417 ldw r2,-48(fp) 50964: 1007883a mov r3,r2 50968: e0bffa17 ldw r2,-24(fp) 5096c: 10c00985 stb r3,38(r2) /* Now calculate how fast each of the other lines should go */ for (y = 0 ; y < ALT_LCD_HEIGHT ; y++) 50970: e03ff315 stw zero,-52(fp) 50974: 00002806 br 50a18 if (sp->line[y].width > ALT_LCD_WIDTH) 50978: e43ffa17 ldw r16,-24(fp) 5097c: e0bff317 ldw r2,-52(fp) 50980: 014018c4 movi r5,99 50984: 1009883a mov r4,r2 50988: 004c9f80 call 4c9f8 <__mulsi3> 5098c: 8085883a add r2,r16,r2 50990: 10802444 addi r2,r2,145 50994: 10800003 ldbu r2,0(r2) 50998: 10803fcc andi r2,r2,255 5099c: 1080201c xori r2,r2,128 509a0: 10bfe004 addi r2,r2,-128 509a4: 10800450 cmplti r2,r2,17 509a8: 1000181e bne r2,zero,50a0c */ #if 1 /* This option makes all the lines scroll round at different speeds * which are chosen so that all the scrolls finish at the same time. */ sp->line[y].speed = 256 * sp->line[y].width / widthmax; 509ac: e43ffa17 ldw r16,-24(fp) 509b0: e0bff317 ldw r2,-52(fp) 509b4: 014018c4 movi r5,99 509b8: 1009883a mov r4,r2 509bc: 004c9f80 call 4c9f8 <__mulsi3> 509c0: 8085883a add r2,r16,r2 509c4: 10802444 addi r2,r2,145 509c8: 10800003 ldbu r2,0(r2) 509cc: 10803fcc andi r2,r2,255 509d0: 1080201c xori r2,r2,128 509d4: 10bfe004 addi r2,r2,-128 509d8: 1004923a slli r2,r2,8 509dc: e17ff417 ldw r5,-48(fp) 509e0: 1009883a mov r4,r2 509e4: 004c8440 call 4c844 <__divsi3> 509e8: 1023883a mov r17,r2 509ec: e43ffa17 ldw r16,-24(fp) 509f0: e0bff317 ldw r2,-52(fp) 509f4: 014018c4 movi r5,99 509f8: 1009883a mov r4,r2 509fc: 004c9f80 call 4c9f8 <__mulsi3> 50a00: 8085883a add r2,r16,r2 50a04: 10802484 addi r2,r2,146 50a08: 14400005 stb r17,0(r2) { widthmax *= 2; sp->scrollmax = widthmax; /* Now calculate how fast each of the other lines should go */ for (y = 0 ; y < ALT_LCD_HEIGHT ; y++) 50a0c: e0bff317 ldw r2,-52(fp) 50a10: 10800044 addi r2,r2,1 50a14: e0bff315 stw r2,-52(fp) 50a18: e0bff317 ldw r2,-52(fp) 50a1c: 10800090 cmplti r2,r2,2 50a20: 103fd51e bne r2,zero,50978 <__alt_data_end+0xfffde978> * (because active was set when the timer interrupt occurred). If there * has been a missed repaint then paint again. And again. etc. */ for ( ; ; ) { int old_scrollpos = sp->scrollpos; 50a24: e0bffa17 ldw r2,-24(fp) 50a28: 10800943 ldbu r2,37(r2) 50a2c: 10803fcc andi r2,r2,255 50a30: e0bff915 stw r2,-28(fp) lcd_repaint_screen(sp); 50a34: e13ffa17 ldw r4,-24(fp) 50a38: 004ff980 call 4ff98 /* Let the timer routines repaint the display again */ sp->active = 0; 50a3c: e0bffa17 ldw r2,-24(fp) 50a40: 100009c5 stb zero,39(r2) /* Have the timer routines tried to scroll while we were painting? * If not then we can exit */ if (sp->scrollpos == old_scrollpos) 50a44: e0bffa17 ldw r2,-24(fp) 50a48: 10800943 ldbu r2,37(r2) 50a4c: 10c03fcc andi r3,r2,255 50a50: e0bff917 ldw r2,-28(fp) 50a54: 18800426 beq r3,r2,50a68 break; /* We need to repaint again since the display scrolled while we were * painting last time */ sp->active = 1; 50a58: e0bffa17 ldw r2,-24(fp) 50a5c: 00c00044 movi r3,1 50a60: 10c009c5 stb r3,39(r2) } 50a64: 003fef06 br 50a24 <__alt_data_end+0xfffdea24> sp->active = 0; /* Have the timer routines tried to scroll while we were painting? * If not then we can exit */ if (sp->scrollpos == old_scrollpos) break; 50a68: 0001883a nop * semaphore so that other threads can access the buffer. */ ALT_SEM_POST (sp->write_lock); return len; 50a6c: e0bffc17 ldw r2,-16(fp) } 50a70: e6fffe04 addi sp,fp,-8 50a74: dfc00317 ldw ra,12(sp) 50a78: df000217 ldw fp,8(sp) 50a7c: dc400117 ldw r17,4(sp) 50a80: dc000017 ldw r16,0(sp) 50a84: dec00404 addi sp,sp,16 50a88: f800283a ret 00050a8c : /* * Timeout routine is called every second */ static alt_u32 alt_lcd_16207_timeout(void* context) { 50a8c: defffc04 addi sp,sp,-16 50a90: dfc00315 stw ra,12(sp) 50a94: df000215 stw fp,8(sp) 50a98: df000204 addi fp,sp,8 50a9c: e13fff15 stw r4,-4(fp) altera_avalon_lcd_16207_state* sp = (altera_avalon_lcd_16207_state*)context; 50aa0: e0bfff17 ldw r2,-4(fp) 50aa4: e0bffe15 stw r2,-8(fp) /* Update the scrolling position */ if (sp->scrollpos + 1 >= sp->scrollmax) 50aa8: e0bffe17 ldw r2,-8(fp) 50aac: 10800943 ldbu r2,37(r2) 50ab0: 10803fcc andi r2,r2,255 50ab4: 10c00044 addi r3,r2,1 50ab8: e0bffe17 ldw r2,-8(fp) 50abc: 10800983 ldbu r2,38(r2) 50ac0: 10803fcc andi r2,r2,255 50ac4: 18800316 blt r3,r2,50ad4 sp->scrollpos = 0; 50ac8: e0bffe17 ldw r2,-8(fp) 50acc: 10000945 stb zero,37(r2) 50ad0: 00000606 br 50aec else sp->scrollpos = sp->scrollpos + 1; 50ad4: e0bffe17 ldw r2,-8(fp) 50ad8: 10800943 ldbu r2,37(r2) 50adc: 10800044 addi r2,r2,1 50ae0: 1007883a mov r3,r2 50ae4: e0bffe17 ldw r2,-8(fp) 50ae8: 10c00945 stb r3,37(r2) /* Repaint the panel unless the foreground will do it again soon */ if (sp->scrollmax > 0 && !sp->active) 50aec: e0bffe17 ldw r2,-8(fp) 50af0: 10800983 ldbu r2,38(r2) 50af4: 10803fcc andi r2,r2,255 50af8: 10000826 beq r2,zero,50b1c 50afc: e0bffe17 ldw r2,-8(fp) 50b00: 108009c3 ldbu r2,39(r2) 50b04: 10803fcc andi r2,r2,255 50b08: 1080201c xori r2,r2,128 50b0c: 10bfe004 addi r2,r2,-128 50b10: 1000021e bne r2,zero,50b1c lcd_repaint_screen(sp); 50b14: e13ffe17 ldw r4,-8(fp) 50b18: 004ff980 call 4ff98 return sp->period; 50b1c: e0bffe17 ldw r2,-8(fp) 50b20: 10800717 ldw r2,28(r2) } 50b24: e037883a mov sp,fp 50b28: dfc00117 ldw ra,4(sp) 50b2c: df000017 ldw fp,0(sp) 50b30: dec00204 addi sp,sp,8 50b34: f800283a ret 00050b38 : /* * Called at boot time to initialise the LCD driver */ void altera_avalon_lcd_16207_init(altera_avalon_lcd_16207_state* sp) { 50b38: defffc04 addi sp,sp,-16 50b3c: dfc00315 stw ra,12(sp) 50b40: df000215 stw fp,8(sp) 50b44: df000204 addi fp,sp,8 50b48: e13fff15 stw r4,-4(fp) unsigned int base = sp->base; 50b4c: e0bfff17 ldw r2,-4(fp) 50b50: 10800017 ldw r2,0(r2) 50b54: e0bffe15 stw r2,-8(fp) /* Mark the device as functional */ sp->broken = 0; 50b58: e0bfff17 ldw r2,-4(fp) 50b5c: 10000805 stb zero,32(r2) * the BUSY bit in the status register doesn't work until the display * has been reset three times. */ /* Wait for 15 ms then reset */ usleep(15000); 50b60: 010ea604 movi r4,15000 50b64: 00518000 call 51800 IOWR_ALTERA_AVALON_LCD_16207_COMMAND(base, LCD_CMD_FUNCTION_SET | LCD_CMD_8BIT); 50b68: e0bffe17 ldw r2,-8(fp) 50b6c: 00c00c04 movi r3,48 50b70: 10c00035 stwio r3,0(r2) /* Wait for another 4.1ms and reset again */ usleep(4100); 50b74: 01040104 movi r4,4100 50b78: 00518000 call 51800 IOWR_ALTERA_AVALON_LCD_16207_COMMAND(base, LCD_CMD_FUNCTION_SET | LCD_CMD_8BIT); 50b7c: e0bffe17 ldw r2,-8(fp) 50b80: 00c00c04 movi r3,48 50b84: 10c00035 stwio r3,0(r2) /* Wait a further 1 ms and reset a third time */ usleep(1000); 50b88: 0100fa04 movi r4,1000 50b8c: 00518000 call 51800 IOWR_ALTERA_AVALON_LCD_16207_COMMAND(base, LCD_CMD_FUNCTION_SET | LCD_CMD_8BIT); 50b90: e0bffe17 ldw r2,-8(fp) 50b94: 00c00c04 movi r3,48 50b98: 10c00035 stwio r3,0(r2) /* Setup interface parameters: 8 bit bus, 2 rows, 5x7 font */ lcd_write_command(sp, LCD_CMD_FUNCTION_SET | LCD_CMD_8BIT | LCD_CMD_TWO_LINE); 50b9c: 01400e04 movi r5,56 50ba0: e13fff17 ldw r4,-4(fp) 50ba4: 004fd200 call 4fd20 /* Turn display off */ lcd_write_command(sp, LCD_CMD_ONOFF); 50ba8: 01400204 movi r5,8 50bac: e13fff17 ldw r4,-4(fp) 50bb0: 004fd200 call 4fd20 /* Clear display */ lcd_clear_screen(sp); 50bb4: e13fff17 ldw r4,-4(fp) 50bb8: 004feb00 call 4feb0 /* Set mode: increment after writing, don't shift display */ lcd_write_command(sp, LCD_CMD_MODES | LCD_CMD_MODE_INC); 50bbc: 01400184 movi r5,6 50bc0: e13fff17 ldw r4,-4(fp) 50bc4: 004fd200 call 4fd20 /* Turn display on */ lcd_write_command(sp, LCD_CMD_ONOFF | LCD_CMD_ENABLE_DISP); 50bc8: 01400304 movi r5,12 50bcc: e13fff17 ldw r4,-4(fp) 50bd0: 004fd200 call 4fd20 sp->esccount = -1; 50bd4: e0bfff17 ldw r2,-4(fp) 50bd8: 00ffffc4 movi r3,-1 50bdc: 10c00905 stb r3,36(r2) memset(sp->escape, 0, sizeof(sp->escape)); 50be0: e0bfff17 ldw r2,-4(fp) 50be4: 10800a04 addi r2,r2,40 50be8: 01800204 movi r6,8 50bec: 000b883a mov r5,zero 50bf0: 1009883a mov r4,r2 50bf4: 00478080 call 47808 sp->scrollpos = 0; 50bf8: e0bfff17 ldw r2,-4(fp) 50bfc: 10000945 stb zero,37(r2) sp->scrollmax = 0; 50c00: e0bfff17 ldw r2,-4(fp) 50c04: 10000985 stb zero,38(r2) sp->active = 0; 50c08: e0bfff17 ldw r2,-4(fp) 50c0c: 100009c5 stb zero,39(r2) 50c10: d0a72617 ldw r2,-25448(gp) sp->period = alt_ticks_per_second() / 10; /* Call every 100ms */ 50c14: 01400284 movi r5,10 50c18: 1009883a mov r4,r2 50c1c: 004c93c0 call 4c93c <__udivsi3> 50c20: 1007883a mov r3,r2 50c24: e0bfff17 ldw r2,-4(fp) 50c28: 10c00715 stw r3,28(r2) alt_alarm_start(&sp->alarm, sp->period, &alt_lcd_16207_timeout, sp); 50c2c: e0bfff17 ldw r2,-4(fp) 50c30: 10c00104 addi r3,r2,4 50c34: e0bfff17 ldw r2,-4(fp) 50c38: 10800717 ldw r2,28(r2) 50c3c: e1ffff17 ldw r7,-4(fp) 50c40: 01800174 movhi r6,5 50c44: 3182a304 addi r6,r6,2700 50c48: 100b883a mov r5,r2 50c4c: 1809883a mov r4,r3 50c50: 0050ccc0 call 50ccc } 50c54: 0001883a nop 50c58: e037883a mov sp,fp 50c5c: dfc00117 ldw ra,4(sp) 50c60: df000017 ldw fp,0(sp) 50c64: dec00204 addi sp,sp,8 50c68: f800283a ret 00050c6c : extern int altera_avalon_lcd_16207_write(altera_avalon_lcd_16207_state* sp, const char* ptr, int count, int flags); int altera_avalon_lcd_16207_write_fd(alt_fd* fd, const char* buffer, int space) { 50c6c: defffa04 addi sp,sp,-24 50c70: dfc00515 stw ra,20(sp) 50c74: df000415 stw fp,16(sp) 50c78: df000404 addi fp,sp,16 50c7c: e13ffd15 stw r4,-12(fp) 50c80: e17ffe15 stw r5,-8(fp) 50c84: e1bfff15 stw r6,-4(fp) altera_avalon_lcd_16207_dev* dev = (altera_avalon_lcd_16207_dev*) fd->dev; 50c88: e0bffd17 ldw r2,-12(fp) 50c8c: 10800017 ldw r2,0(r2) 50c90: e0bffc15 stw r2,-16(fp) return altera_avalon_lcd_16207_write(&dev->state, buffer, space, 50c94: e0bffc17 ldw r2,-16(fp) 50c98: 10c00a04 addi r3,r2,40 50c9c: e0bffd17 ldw r2,-12(fp) 50ca0: 10800217 ldw r2,8(r2) 50ca4: 100f883a mov r7,r2 50ca8: e1bfff17 ldw r6,-4(fp) 50cac: e17ffe17 ldw r5,-8(fp) 50cb0: 1809883a mov r4,r3 50cb4: 005056c0 call 5056c fd->fd_flags); } 50cb8: e037883a mov sp,fp 50cbc: dfc00117 ldw ra,4(sp) 50cc0: df000017 ldw fp,0(sp) 50cc4: dec00204 addi sp,sp,8 50cc8: f800283a ret 00050ccc : */ int alt_alarm_start (alt_alarm* alarm, alt_u32 nticks, alt_u32 (*callback) (void* context), void* context) { 50ccc: defff504 addi sp,sp,-44 50cd0: df000a15 stw fp,40(sp) 50cd4: df000a04 addi fp,sp,40 50cd8: e13ffc15 stw r4,-16(fp) 50cdc: e17ffd15 stw r5,-12(fp) 50ce0: e1bffe15 stw r6,-8(fp) 50ce4: e1ffff15 stw r7,-4(fp) alt_irq_context irq_context; alt_u32 current_nticks = 0; 50ce8: e03ff615 stw zero,-40(fp) 50cec: d0a72617 ldw r2,-25448(gp) if (alt_ticks_per_second ()) 50cf0: 10003c26 beq r2,zero,50de4 { if (alarm) 50cf4: e0bffc17 ldw r2,-16(fp) 50cf8: 10003826 beq r2,zero,50ddc { alarm->callback = callback; 50cfc: e0bffc17 ldw r2,-16(fp) 50d00: e0fffe17 ldw r3,-8(fp) 50d04: 10c00315 stw r3,12(r2) alarm->context = context; 50d08: e0bffc17 ldw r2,-16(fp) 50d0c: e0ffff17 ldw r3,-4(fp) 50d10: 10c00515 stw r3,20(r2) static ALT_INLINE alt_irq_context ALT_ALWAYS_INLINE alt_irq_disable_all (void) { alt_irq_context context; NIOS2_READ_STATUS (context); 50d14: 0005303a rdctl r2,status 50d18: e0bff915 stw r2,-28(fp) NIOS2_WRITE_STATUS (context & ~NIOS2_STATUS_PIE_MSK); 50d1c: e0fff917 ldw r3,-28(fp) 50d20: 00bfff84 movi r2,-2 50d24: 1884703a and r2,r3,r2 50d28: 1001703a wrctl status,r2 return context; 50d2c: e0bff917 ldw r2,-28(fp) irq_context = alt_irq_disable_all (); 50d30: e0bff815 stw r2,-32(fp) * alt_nticks() returns the elapsed number of system clock ticks since reset. */ static ALT_INLINE alt_u32 ALT_ALWAYS_INLINE alt_nticks (void) { return _alt_nticks; 50d34: d0a72717 ldw r2,-25444(gp) current_nticks = alt_nticks(); 50d38: e0bff615 stw r2,-40(fp) alarm->time = nticks + current_nticks + 1; 50d3c: e0fffd17 ldw r3,-12(fp) 50d40: e0bff617 ldw r2,-40(fp) 50d44: 1885883a add r2,r3,r2 50d48: 10c00044 addi r3,r2,1 50d4c: e0bffc17 ldw r2,-16(fp) 50d50: 10c00215 stw r3,8(r2) /* * If the desired alarm time causes a roll-over, set the rollover * flag. This will prevent the subsequent tick event from causing * an alarm too early. */ if(alarm->time < current_nticks) 50d54: e0bffc17 ldw r2,-16(fp) 50d58: 10c00217 ldw r3,8(r2) 50d5c: e0bff617 ldw r2,-40(fp) 50d60: 1880042e bgeu r3,r2,50d74 { alarm->rollover = 1; 50d64: e0bffc17 ldw r2,-16(fp) 50d68: 00c00044 movi r3,1 50d6c: 10c00405 stb r3,16(r2) 50d70: 00000206 br 50d7c } else { alarm->rollover = 0; 50d74: e0bffc17 ldw r2,-16(fp) 50d78: 10000405 stb zero,16(r2) } alt_llist_insert (&alt_alarm_list, &alarm->llist); 50d7c: e0bffc17 ldw r2,-16(fp) 50d80: d0e00f04 addi r3,gp,-32708 50d84: e0fffa15 stw r3,-24(fp) 50d88: e0bffb15 stw r2,-20(fp) */ static ALT_INLINE void ALT_ALWAYS_INLINE alt_llist_insert(alt_llist* list, alt_llist* entry) { entry->previous = list; 50d8c: e0bffb17 ldw r2,-20(fp) 50d90: e0fffa17 ldw r3,-24(fp) 50d94: 10c00115 stw r3,4(r2) entry->next = list->next; 50d98: e0bffa17 ldw r2,-24(fp) 50d9c: 10c00017 ldw r3,0(r2) 50da0: e0bffb17 ldw r2,-20(fp) 50da4: 10c00015 stw r3,0(r2) list->next->previous = entry; 50da8: e0bffa17 ldw r2,-24(fp) 50dac: 10800017 ldw r2,0(r2) 50db0: e0fffb17 ldw r3,-20(fp) 50db4: 10c00115 stw r3,4(r2) list->next = entry; 50db8: e0bffa17 ldw r2,-24(fp) 50dbc: e0fffb17 ldw r3,-20(fp) 50dc0: 10c00015 stw r3,0(r2) 50dc4: e0bff817 ldw r2,-32(fp) 50dc8: e0bff715 stw r2,-36(fp) status &= ~NIOS2_STATUS_PIE_MSK; status |= (context & NIOS2_STATUS_PIE_MSK); NIOS2_WRITE_STATUS (status); #else NIOS2_WRITE_STATUS (context); 50dcc: e0bff717 ldw r2,-36(fp) 50dd0: 1001703a wrctl status,r2 alt_irq_enable_all (irq_context); return 0; 50dd4: 0005883a mov r2,zero 50dd8: 00000306 br 50de8 } else { return -EINVAL; 50ddc: 00bffa84 movi r2,-22 50de0: 00000106 br 50de8 } } else { return -ENOTSUP; 50de4: 00bfde84 movi r2,-134 } } 50de8: e037883a mov sp,fp 50dec: df000017 ldw fp,0(sp) 50df0: dec00104 addi sp,sp,4 50df4: f800283a ret 00050df8 : /* * alt_dcache_flush_all() is called to flush the entire data cache. */ void alt_dcache_flush_all (void) { 50df8: deffff04 addi sp,sp,-4 50dfc: df000015 stw fp,0(sp) 50e00: d839883a mov fp,sp for (i = (char*) 0; i < (char*) NIOS2_DCACHE_SIZE; i+= NIOS2_DCACHE_LINE_SIZE) { __asm__ volatile ("flushd (%0)" :: "r" (i)); } #endif /* NIOS2_DCACHE_SIZE > 0 */ } 50e04: 0001883a nop 50e08: e037883a mov sp,fp 50e0c: df000017 ldw fp,0(sp) 50e10: dec00104 addi sp,sp,4 50e14: f800283a ret 00050e18 : #undef errno extern int errno; static ALT_INLINE int* alt_get_errno(void) { 50e18: defffe04 addi sp,sp,-8 50e1c: dfc00115 stw ra,4(sp) 50e20: df000015 stw fp,0(sp) 50e24: d839883a mov fp,sp return ((alt_errno) ? alt_errno() : &errno); 50e28: d0a00b17 ldw r2,-32724(gp) 50e2c: 10000326 beq r2,zero,50e3c 50e30: d0a00b17 ldw r2,-32724(gp) 50e34: 103ee83a callr r2 50e38: 00000106 br 50e40 50e3c: d0a72104 addi r2,gp,-25468 } 50e40: e037883a mov sp,fp 50e44: dfc00117 ldw ra,4(sp) 50e48: df000017 ldw fp,0(sp) 50e4c: dec00204 addi sp,sp,8 50e50: f800283a ret 00050e54 : /* * */ int alt_dev_llist_insert (alt_dev_llist* dev, alt_llist* list) { 50e54: defffa04 addi sp,sp,-24 50e58: dfc00515 stw ra,20(sp) 50e5c: df000415 stw fp,16(sp) 50e60: df000404 addi fp,sp,16 50e64: e13ffe15 stw r4,-8(fp) 50e68: e17fff15 stw r5,-4(fp) /* * check that the device exists, and that it has a valid name. */ if (!dev || !dev->name) 50e6c: e0bffe17 ldw r2,-8(fp) 50e70: 10000326 beq r2,zero,50e80 50e74: e0bffe17 ldw r2,-8(fp) 50e78: 10800217 ldw r2,8(r2) 50e7c: 1000061e bne r2,zero,50e98 { ALT_ERRNO = EINVAL; 50e80: 0050e180 call 50e18 50e84: 1007883a mov r3,r2 50e88: 00800584 movi r2,22 50e8c: 18800015 stw r2,0(r3) return -EINVAL; 50e90: 00bffa84 movi r2,-22 50e94: 00001306 br 50ee4 /* * register the device. */ alt_llist_insert(list, &dev->llist); 50e98: e0bffe17 ldw r2,-8(fp) 50e9c: e0ffff17 ldw r3,-4(fp) 50ea0: e0fffc15 stw r3,-16(fp) 50ea4: e0bffd15 stw r2,-12(fp) */ static ALT_INLINE void ALT_ALWAYS_INLINE alt_llist_insert(alt_llist* list, alt_llist* entry) { entry->previous = list; 50ea8: e0bffd17 ldw r2,-12(fp) 50eac: e0fffc17 ldw r3,-16(fp) 50eb0: 10c00115 stw r3,4(r2) entry->next = list->next; 50eb4: e0bffc17 ldw r2,-16(fp) 50eb8: 10c00017 ldw r3,0(r2) 50ebc: e0bffd17 ldw r2,-12(fp) 50ec0: 10c00015 stw r3,0(r2) list->next->previous = entry; 50ec4: e0bffc17 ldw r2,-16(fp) 50ec8: 10800017 ldw r2,0(r2) 50ecc: e0fffd17 ldw r3,-12(fp) 50ed0: 10c00115 stw r3,4(r2) list->next = entry; 50ed4: e0bffc17 ldw r2,-16(fp) 50ed8: e0fffd17 ldw r3,-12(fp) 50edc: 10c00015 stw r3,0(r2) return 0; 50ee0: 0005883a mov r2,zero } 50ee4: e037883a mov sp,fp 50ee8: dfc00117 ldw ra,4(sp) 50eec: df000017 ldw fp,0(sp) 50ef0: dec00204 addi sp,sp,8 50ef4: f800283a ret 00050ef8 <_do_ctors>: /* * Run the C++ static constructors. */ void _do_ctors(void) { 50ef8: defffd04 addi sp,sp,-12 50efc: dfc00215 stw ra,8(sp) 50f00: df000115 stw fp,4(sp) 50f04: df000104 addi fp,sp,4 constructor* ctor; for (ctor = &__CTOR_END__[-1]; ctor >= __CTOR_LIST__; ctor--) 50f08: 00800174 movhi r2,5 50f0c: 10880d04 addi r2,r2,8244 50f10: e0bfff15 stw r2,-4(fp) 50f14: 00000606 br 50f30 <_do_ctors+0x38> (*ctor) (); 50f18: e0bfff17 ldw r2,-4(fp) 50f1c: 10800017 ldw r2,0(r2) 50f20: 103ee83a callr r2 void _do_ctors(void) { constructor* ctor; for (ctor = &__CTOR_END__[-1]; ctor >= __CTOR_LIST__; ctor--) 50f24: e0bfff17 ldw r2,-4(fp) 50f28: 10bfff04 addi r2,r2,-4 50f2c: e0bfff15 stw r2,-4(fp) 50f30: e0ffff17 ldw r3,-4(fp) 50f34: 00800174 movhi r2,5 50f38: 10880e04 addi r2,r2,8248 50f3c: 18bff62e bgeu r3,r2,50f18 <__alt_data_end+0xfffdef18> (*ctor) (); } 50f40: 0001883a nop 50f44: e037883a mov sp,fp 50f48: dfc00117 ldw ra,4(sp) 50f4c: df000017 ldw fp,0(sp) 50f50: dec00204 addi sp,sp,8 50f54: f800283a ret 00050f58 <_do_dtors>: /* * Run the C++ static destructors. */ void _do_dtors(void) { 50f58: defffd04 addi sp,sp,-12 50f5c: dfc00215 stw ra,8(sp) 50f60: df000115 stw fp,4(sp) 50f64: df000104 addi fp,sp,4 destructor* dtor; for (dtor = &__DTOR_END__[-1]; dtor >= __DTOR_LIST__; dtor--) 50f68: 00800174 movhi r2,5 50f6c: 10880d04 addi r2,r2,8244 50f70: e0bfff15 stw r2,-4(fp) 50f74: 00000606 br 50f90 <_do_dtors+0x38> (*dtor) (); 50f78: e0bfff17 ldw r2,-4(fp) 50f7c: 10800017 ldw r2,0(r2) 50f80: 103ee83a callr r2 void _do_dtors(void) { destructor* dtor; for (dtor = &__DTOR_END__[-1]; dtor >= __DTOR_LIST__; dtor--) 50f84: e0bfff17 ldw r2,-4(fp) 50f88: 10bfff04 addi r2,r2,-4 50f8c: e0bfff15 stw r2,-4(fp) 50f90: e0ffff17 ldw r3,-4(fp) 50f94: 00800174 movhi r2,5 50f98: 10880e04 addi r2,r2,8248 50f9c: 18bff62e bgeu r3,r2,50f78 <__alt_data_end+0xfffdef78> (*dtor) (); } 50fa0: 0001883a nop 50fa4: e037883a mov sp,fp 50fa8: dfc00117 ldw ra,4(sp) 50fac: df000017 ldw fp,0(sp) 50fb0: dec00204 addi sp,sp,8 50fb4: f800283a ret 00050fb8 : /* * alt_icache_flush_all() is called to flush the entire instruction cache. */ void alt_icache_flush_all (void) { 50fb8: deffff04 addi sp,sp,-4 50fbc: df000015 stw fp,0(sp) 50fc0: d839883a mov fp,sp #if NIOS2_ICACHE_SIZE > 0 alt_icache_flush (0, NIOS2_ICACHE_SIZE); #endif } 50fc4: 0001883a nop 50fc8: e037883a mov sp,fp 50fcc: df000017 ldw fp,0(sp) 50fd0: dec00104 addi sp,sp,4 50fd4: f800283a ret 00050fd8 : * @param irq IRQ number * @return 0 if successful, else error (-1) */ int alt_ic_isr_register(alt_u32 ic_id, alt_u32 irq, alt_isr_func isr, void *isr_context, void *flags) { 50fd8: defff904 addi sp,sp,-28 50fdc: dfc00615 stw ra,24(sp) 50fe0: df000515 stw fp,20(sp) 50fe4: df000504 addi fp,sp,20 50fe8: e13ffc15 stw r4,-16(fp) 50fec: e17ffd15 stw r5,-12(fp) 50ff0: e1bffe15 stw r6,-8(fp) 50ff4: e1ffff15 stw r7,-4(fp) return alt_iic_isr_register(ic_id, irq, isr, isr_context, flags); 50ff8: e0800217 ldw r2,8(fp) 50ffc: d8800015 stw r2,0(sp) 51000: e1ffff17 ldw r7,-4(fp) 51004: e1bffe17 ldw r6,-8(fp) 51008: e17ffd17 ldw r5,-12(fp) 5100c: e13ffc17 ldw r4,-16(fp) 51010: 00511880 call 51188 } 51014: e037883a mov sp,fp 51018: dfc00117 ldw ra,4(sp) 5101c: df000017 ldw fp,0(sp) 51020: dec00204 addi sp,sp,8 51024: f800283a ret 00051028 : * @param ic_id Ignored. * @param irq IRQ number * @return 0 if successful, else error (-1) */ int alt_ic_irq_enable (alt_u32 ic_id, alt_u32 irq) { 51028: defff904 addi sp,sp,-28 5102c: df000615 stw fp,24(sp) 51030: df000604 addi fp,sp,24 51034: e13ffe15 stw r4,-8(fp) 51038: e17fff15 stw r5,-4(fp) 5103c: e0bfff17 ldw r2,-4(fp) 51040: e0bffa15 stw r2,-24(fp) static ALT_INLINE alt_irq_context ALT_ALWAYS_INLINE alt_irq_disable_all (void) { alt_irq_context context; NIOS2_READ_STATUS (context); 51044: 0005303a rdctl r2,status 51048: e0bffb15 stw r2,-20(fp) NIOS2_WRITE_STATUS (context & ~NIOS2_STATUS_PIE_MSK); 5104c: e0fffb17 ldw r3,-20(fp) 51050: 00bfff84 movi r2,-2 51054: 1884703a and r2,r3,r2 51058: 1001703a wrctl status,r2 return context; 5105c: e0bffb17 ldw r2,-20(fp) static ALT_INLINE int ALT_ALWAYS_INLINE alt_irq_enable (alt_u32 id) { alt_irq_context status; extern volatile alt_u32 alt_irq_active; status = alt_irq_disable_all (); 51060: e0bffc15 stw r2,-16(fp) alt_irq_active |= (1 << id); 51064: 00c00044 movi r3,1 51068: e0bffa17 ldw r2,-24(fp) 5106c: 1884983a sll r2,r3,r2 51070: 1007883a mov r3,r2 51074: d0a72517 ldw r2,-25452(gp) 51078: 1884b03a or r2,r3,r2 5107c: d0a72515 stw r2,-25452(gp) NIOS2_WRITE_IENABLE (alt_irq_active); 51080: d0a72517 ldw r2,-25452(gp) 51084: 100170fa wrctl ienable,r2 51088: e0bffc17 ldw r2,-16(fp) 5108c: e0bffd15 stw r2,-12(fp) status &= ~NIOS2_STATUS_PIE_MSK; status |= (context & NIOS2_STATUS_PIE_MSK); NIOS2_WRITE_STATUS (status); #else NIOS2_WRITE_STATUS (context); 51090: e0bffd17 ldw r2,-12(fp) 51094: 1001703a wrctl status,r2 alt_irq_enable_all(status); return 0; 51098: 0005883a mov r2,zero return alt_irq_enable(irq); 5109c: 0001883a nop } 510a0: e037883a mov sp,fp 510a4: df000017 ldw fp,0(sp) 510a8: dec00104 addi sp,sp,4 510ac: f800283a ret 000510b0 : * @param ic_id Ignored. * @param irq IRQ number * @return 0 if successful, else error (-1) */ int alt_ic_irq_disable(alt_u32 ic_id, alt_u32 irq) { 510b0: defff904 addi sp,sp,-28 510b4: df000615 stw fp,24(sp) 510b8: df000604 addi fp,sp,24 510bc: e13ffe15 stw r4,-8(fp) 510c0: e17fff15 stw r5,-4(fp) 510c4: e0bfff17 ldw r2,-4(fp) 510c8: e0bffa15 stw r2,-24(fp) static ALT_INLINE alt_irq_context ALT_ALWAYS_INLINE alt_irq_disable_all (void) { alt_irq_context context; NIOS2_READ_STATUS (context); 510cc: 0005303a rdctl r2,status 510d0: e0bffb15 stw r2,-20(fp) NIOS2_WRITE_STATUS (context & ~NIOS2_STATUS_PIE_MSK); 510d4: e0fffb17 ldw r3,-20(fp) 510d8: 00bfff84 movi r2,-2 510dc: 1884703a and r2,r3,r2 510e0: 1001703a wrctl status,r2 return context; 510e4: e0bffb17 ldw r2,-20(fp) static ALT_INLINE int ALT_ALWAYS_INLINE alt_irq_disable (alt_u32 id) { alt_irq_context status; extern volatile alt_u32 alt_irq_active; status = alt_irq_disable_all (); 510e8: e0bffc15 stw r2,-16(fp) alt_irq_active &= ~(1 << id); 510ec: 00c00044 movi r3,1 510f0: e0bffa17 ldw r2,-24(fp) 510f4: 1884983a sll r2,r3,r2 510f8: 0084303a nor r2,zero,r2 510fc: 1007883a mov r3,r2 51100: d0a72517 ldw r2,-25452(gp) 51104: 1884703a and r2,r3,r2 51108: d0a72515 stw r2,-25452(gp) NIOS2_WRITE_IENABLE (alt_irq_active); 5110c: d0a72517 ldw r2,-25452(gp) 51110: 100170fa wrctl ienable,r2 51114: e0bffc17 ldw r2,-16(fp) 51118: e0bffd15 stw r2,-12(fp) status &= ~NIOS2_STATUS_PIE_MSK; status |= (context & NIOS2_STATUS_PIE_MSK); NIOS2_WRITE_STATUS (status); #else NIOS2_WRITE_STATUS (context); 5111c: e0bffd17 ldw r2,-12(fp) 51120: 1001703a wrctl status,r2 alt_irq_enable_all(status); return 0; 51124: 0005883a mov r2,zero return alt_irq_disable(irq); 51128: 0001883a nop } 5112c: e037883a mov sp,fp 51130: df000017 ldw fp,0(sp) 51134: dec00104 addi sp,sp,4 51138: f800283a ret 0005113c : * @param irq IRQ number * @return Zero if corresponding interrupt is disabled and * non-zero otherwise. */ alt_u32 alt_ic_irq_enabled(alt_u32 ic_id, alt_u32 irq) { 5113c: defffc04 addi sp,sp,-16 51140: df000315 stw fp,12(sp) 51144: df000304 addi fp,sp,12 51148: e13ffe15 stw r4,-8(fp) 5114c: e17fff15 stw r5,-4(fp) alt_u32 irq_enabled; NIOS2_READ_IENABLE(irq_enabled); 51150: 000530fa rdctl r2,ienable 51154: e0bffd15 stw r2,-12(fp) return (irq_enabled & (1 << irq)) ? 1: 0; 51158: 00c00044 movi r3,1 5115c: e0bfff17 ldw r2,-4(fp) 51160: 1884983a sll r2,r3,r2 51164: 1007883a mov r3,r2 51168: e0bffd17 ldw r2,-12(fp) 5116c: 1884703a and r2,r3,r2 51170: 1004c03a cmpne r2,r2,zero 51174: 10803fcc andi r2,r2,255 } 51178: e037883a mov sp,fp 5117c: df000017 ldw fp,0(sp) 51180: dec00104 addi sp,sp,4 51184: f800283a ret 00051188 : * @param flags * @return 0 if successful, else error (-1) */ int alt_iic_isr_register(alt_u32 ic_id, alt_u32 irq, alt_isr_func isr, void *isr_context, void *flags) { 51188: defff504 addi sp,sp,-44 5118c: dfc00a15 stw ra,40(sp) 51190: df000915 stw fp,36(sp) 51194: df000904 addi fp,sp,36 51198: e13ffc15 stw r4,-16(fp) 5119c: e17ffd15 stw r5,-12(fp) 511a0: e1bffe15 stw r6,-8(fp) 511a4: e1ffff15 stw r7,-4(fp) int rc = -EINVAL; 511a8: 00bffa84 movi r2,-22 511ac: e0bff715 stw r2,-36(fp) int id = irq; /* IRQ interpreted as the interrupt ID. */ 511b0: e0bffd17 ldw r2,-12(fp) 511b4: e0bff815 stw r2,-32(fp) alt_irq_context status; if (id < ALT_NIRQ) 511b8: e0bff817 ldw r2,-32(fp) 511bc: 10800808 cmpgei r2,r2,32 511c0: 1000271e bne r2,zero,51260 static ALT_INLINE alt_irq_context ALT_ALWAYS_INLINE alt_irq_disable_all (void) { alt_irq_context context; NIOS2_READ_STATUS (context); 511c4: 0005303a rdctl r2,status 511c8: e0bffb15 stw r2,-20(fp) NIOS2_WRITE_STATUS (context & ~NIOS2_STATUS_PIE_MSK); 511cc: e0fffb17 ldw r3,-20(fp) 511d0: 00bfff84 movi r2,-2 511d4: 1884703a and r2,r3,r2 511d8: 1001703a wrctl status,r2 return context; 511dc: e0bffb17 ldw r2,-20(fp) * interrupts are disabled while the handler tables are updated to ensure * that an interrupt doesn't occur while the tables are in an inconsistant * state. */ status = alt_irq_disable_all(); 511e0: e0bffa15 stw r2,-24(fp) alt_irq[id].handler = isr; 511e4: 00800174 movhi r2,5 511e8: 1097c904 addi r2,r2,24356 511ec: e0fff817 ldw r3,-32(fp) 511f0: 180690fa slli r3,r3,3 511f4: 10c5883a add r2,r2,r3 511f8: e0fffe17 ldw r3,-8(fp) 511fc: 10c00015 stw r3,0(r2) alt_irq[id].context = isr_context; 51200: 00800174 movhi r2,5 51204: 1097c904 addi r2,r2,24356 51208: e0fff817 ldw r3,-32(fp) 5120c: 180690fa slli r3,r3,3 51210: 10c5883a add r2,r2,r3 51214: 10800104 addi r2,r2,4 51218: e0ffff17 ldw r3,-4(fp) 5121c: 10c00015 stw r3,0(r2) rc = (isr) ? alt_ic_irq_enable(ic_id, id) : alt_ic_irq_disable(ic_id, id); 51220: e0bffe17 ldw r2,-8(fp) 51224: 10000526 beq r2,zero,5123c 51228: e0bff817 ldw r2,-32(fp) 5122c: 100b883a mov r5,r2 51230: e13ffc17 ldw r4,-16(fp) 51234: 00510280 call 51028 51238: 00000406 br 5124c 5123c: e0bff817 ldw r2,-32(fp) 51240: 100b883a mov r5,r2 51244: e13ffc17 ldw r4,-16(fp) 51248: 00510b00 call 510b0 5124c: e0bff715 stw r2,-36(fp) 51250: e0bffa17 ldw r2,-24(fp) 51254: e0bff915 stw r2,-28(fp) status &= ~NIOS2_STATUS_PIE_MSK; status |= (context & NIOS2_STATUS_PIE_MSK); NIOS2_WRITE_STATUS (status); #else NIOS2_WRITE_STATUS (context); 51258: e0bff917 ldw r2,-28(fp) 5125c: 1001703a wrctl status,r2 alt_irq_enable_all(status); } return rc; 51260: e0bff717 ldw r2,-36(fp) } 51264: e037883a mov sp,fp 51268: dfc00117 ldw ra,4(sp) 5126c: df000017 ldw fp,0(sp) 51270: dec00204 addi sp,sp,8 51274: f800283a ret 00051278 : * If the device can not be succesfully opened, then the input file descriptor * remains unchanged. */ static void alt_open_fd(alt_fd* fd, const char* name, int flags, int mode) { 51278: defff804 addi sp,sp,-32 5127c: dfc00715 stw ra,28(sp) 51280: df000615 stw fp,24(sp) 51284: dc000515 stw r16,20(sp) 51288: df000604 addi fp,sp,24 5128c: e13ffb15 stw r4,-20(fp) 51290: e17ffc15 stw r5,-16(fp) 51294: e1bffd15 stw r6,-12(fp) 51298: e1fffe15 stw r7,-8(fp) int old; old = open (name, flags, mode); 5129c: e1bffe17 ldw r6,-8(fp) 512a0: e17ffd17 ldw r5,-12(fp) 512a4: e13ffc17 ldw r4,-16(fp) 512a8: 00515000 call 51500 512ac: e0bffa15 stw r2,-24(fp) if (old >= 0) 512b0: e0bffa17 ldw r2,-24(fp) 512b4: 10002216 blt r2,zero,51340 { fd->dev = alt_fd_list[old].dev; 512b8: 04000174 movhi r16,5 512bc: 840bca04 addi r16,r16,12072 512c0: e0bffa17 ldw r2,-24(fp) 512c4: 01400304 movi r5,12 512c8: 1009883a mov r4,r2 512cc: 004c9f80 call 4c9f8 <__mulsi3> 512d0: 8085883a add r2,r16,r2 512d4: 10c00017 ldw r3,0(r2) 512d8: e0bffb17 ldw r2,-20(fp) 512dc: 10c00015 stw r3,0(r2) fd->priv = alt_fd_list[old].priv; 512e0: 04000174 movhi r16,5 512e4: 840bca04 addi r16,r16,12072 512e8: e0bffa17 ldw r2,-24(fp) 512ec: 01400304 movi r5,12 512f0: 1009883a mov r4,r2 512f4: 004c9f80 call 4c9f8 <__mulsi3> 512f8: 8085883a add r2,r16,r2 512fc: 10800104 addi r2,r2,4 51300: 10c00017 ldw r3,0(r2) 51304: e0bffb17 ldw r2,-20(fp) 51308: 10c00115 stw r3,4(r2) fd->fd_flags = alt_fd_list[old].fd_flags; 5130c: 04000174 movhi r16,5 51310: 840bca04 addi r16,r16,12072 51314: e0bffa17 ldw r2,-24(fp) 51318: 01400304 movi r5,12 5131c: 1009883a mov r4,r2 51320: 004c9f80 call 4c9f8 <__mulsi3> 51324: 8085883a add r2,r16,r2 51328: 10800204 addi r2,r2,8 5132c: 10c00017 ldw r3,0(r2) 51330: e0bffb17 ldw r2,-20(fp) 51334: 10c00215 stw r3,8(r2) alt_release_fd (old); 51338: e13ffa17 ldw r4,-24(fp) 5133c: 004ef7c0 call 4ef7c } } 51340: 0001883a nop 51344: e6ffff04 addi sp,fp,-4 51348: dfc00217 ldw ra,8(sp) 5134c: df000117 ldw fp,4(sp) 51350: dc000017 ldw r16,0(sp) 51354: dec00304 addi sp,sp,12 51358: f800283a ret 0005135c : */ void alt_io_redirect(const char* stdout_dev, const char* stdin_dev, const char* stderr_dev) { 5135c: defffb04 addi sp,sp,-20 51360: dfc00415 stw ra,16(sp) 51364: df000315 stw fp,12(sp) 51368: df000304 addi fp,sp,12 5136c: e13ffd15 stw r4,-12(fp) 51370: e17ffe15 stw r5,-8(fp) 51374: e1bfff15 stw r6,-4(fp) /* Redirect the channels */ alt_open_fd (&alt_fd_list[STDOUT_FILENO], stdout_dev, O_WRONLY, 0777); 51378: 01c07fc4 movi r7,511 5137c: 01800044 movi r6,1 51380: e17ffd17 ldw r5,-12(fp) 51384: 01000174 movhi r4,5 51388: 210bcd04 addi r4,r4,12084 5138c: 00512780 call 51278 alt_open_fd (&alt_fd_list[STDIN_FILENO], stdin_dev, O_RDONLY, 0777); 51390: 01c07fc4 movi r7,511 51394: 000d883a mov r6,zero 51398: e17ffe17 ldw r5,-8(fp) 5139c: 01000174 movhi r4,5 513a0: 210bca04 addi r4,r4,12072 513a4: 00512780 call 51278 alt_open_fd (&alt_fd_list[STDERR_FILENO], stderr_dev, O_WRONLY, 0777); 513a8: 01c07fc4 movi r7,511 513ac: 01800044 movi r6,1 513b0: e17fff17 ldw r5,-4(fp) 513b4: 01000174 movhi r4,5 513b8: 210bd004 addi r4,r4,12096 513bc: 00512780 call 51278 } 513c0: 0001883a nop 513c4: e037883a mov sp,fp 513c8: dfc00117 ldw ra,4(sp) 513cc: df000017 ldw fp,0(sp) 513d0: dec00204 addi sp,sp,8 513d4: f800283a ret 000513d8 : #undef errno extern int errno; static ALT_INLINE int* alt_get_errno(void) { 513d8: defffe04 addi sp,sp,-8 513dc: dfc00115 stw ra,4(sp) 513e0: df000015 stw fp,0(sp) 513e4: d839883a mov fp,sp return ((alt_errno) ? alt_errno() : &errno); 513e8: d0a00b17 ldw r2,-32724(gp) 513ec: 10000326 beq r2,zero,513fc 513f0: d0a00b17 ldw r2,-32724(gp) 513f4: 103ee83a callr r2 513f8: 00000106 br 51400 513fc: d0a72104 addi r2,gp,-25468 } 51400: e037883a mov sp,fp 51404: dfc00117 ldw ra,4(sp) 51408: df000017 ldw fp,0(sp) 5140c: dec00204 addi sp,sp,8 51410: f800283a ret 00051414 : * performed for devices. Filesystems are required to handle the ioctl() call * themselves, and report the error from the filesystems open() function. */ static int alt_file_locked (alt_fd* fd) { 51414: defffb04 addi sp,sp,-20 51418: dfc00415 stw ra,16(sp) 5141c: df000315 stw fp,12(sp) 51420: dc000215 stw r16,8(sp) 51424: df000304 addi fp,sp,12 51428: e13ffe15 stw r4,-8(fp) /* * Mark the file descriptor as belonging to a device. */ fd->fd_flags |= ALT_FD_DEV; 5142c: e0bffe17 ldw r2,-8(fp) 51430: 10800217 ldw r2,8(r2) 51434: 10d00034 orhi r3,r2,16384 51438: e0bffe17 ldw r2,-8(fp) 5143c: 10c00215 stw r3,8(r2) /* * Loop through all current file descriptors searching for one that's locked * for exclusive access. If a match is found, generate an error. */ for (i = 0; i <= alt_max_fd; i++) 51440: e03ffd15 stw zero,-12(fp) 51444: 00002306 br 514d4 { if ((alt_fd_list[i].dev == fd->dev) && 51448: 04000174 movhi r16,5 5144c: 840bca04 addi r16,r16,12072 51450: e0bffd17 ldw r2,-12(fp) 51454: 01400304 movi r5,12 51458: 1009883a mov r4,r2 5145c: 004c9f80 call 4c9f8 <__mulsi3> 51460: 8085883a add r2,r16,r2 51464: 10c00017 ldw r3,0(r2) 51468: e0bffe17 ldw r2,-8(fp) 5146c: 10800017 ldw r2,0(r2) 51470: 1880151e bne r3,r2,514c8 (alt_fd_list[i].fd_flags & ALT_FD_EXCL) && 51474: 04000174 movhi r16,5 51478: 840bca04 addi r16,r16,12072 5147c: e0bffd17 ldw r2,-12(fp) 51480: 01400304 movi r5,12 51484: 1009883a mov r4,r2 51488: 004c9f80 call 4c9f8 <__mulsi3> 5148c: 8085883a add r2,r16,r2 51490: 10800204 addi r2,r2,8 51494: 10800017 ldw r2,0(r2) * for exclusive access. If a match is found, generate an error. */ for (i = 0; i <= alt_max_fd; i++) { if ((alt_fd_list[i].dev == fd->dev) && 51498: 10000b0e bge r2,zero,514c8 (alt_fd_list[i].fd_flags & ALT_FD_EXCL) && (&alt_fd_list[i] != fd)) 5149c: 01400304 movi r5,12 514a0: e13ffd17 ldw r4,-12(fp) 514a4: 004c9f80 call 4c9f8 <__mulsi3> 514a8: 1007883a mov r3,r2 514ac: 00800174 movhi r2,5 514b0: 108bca04 addi r2,r2,12072 514b4: 1887883a add r3,r3,r2 */ for (i = 0; i <= alt_max_fd; i++) { if ((alt_fd_list[i].dev == fd->dev) && (alt_fd_list[i].fd_flags & ALT_FD_EXCL) && 514b8: e0bffe17 ldw r2,-8(fp) 514bc: 18800226 beq r3,r2,514c8 (&alt_fd_list[i] != fd)) { return -EACCES; 514c0: 00bffcc4 movi r2,-13 514c4: 00000806 br 514e8 /* * Loop through all current file descriptors searching for one that's locked * for exclusive access. If a match is found, generate an error. */ for (i = 0; i <= alt_max_fd; i++) 514c8: e0bffd17 ldw r2,-12(fp) 514cc: 10800044 addi r2,r2,1 514d0: e0bffd15 stw r2,-12(fp) 514d4: d0a00a17 ldw r2,-32728(gp) 514d8: 1007883a mov r3,r2 514dc: e0bffd17 ldw r2,-12(fp) 514e0: 18bfd92e bgeu r3,r2,51448 <__alt_data_end+0xfffdf448> } } /* The device is not locked */ return 0; 514e4: 0005883a mov r2,zero } 514e8: e6ffff04 addi sp,fp,-4 514ec: dfc00217 ldw ra,8(sp) 514f0: df000117 ldw fp,4(sp) 514f4: dc000017 ldw r16,0(sp) 514f8: dec00304 addi sp,sp,12 514fc: f800283a ret 00051500 : * * ALT_OPEN is mapped onto the open() system call in alt_syscall.h */ int ALT_OPEN (const char* file, int flags, int mode) { 51500: defff604 addi sp,sp,-40 51504: dfc00915 stw ra,36(sp) 51508: df000815 stw fp,32(sp) 5150c: df000804 addi fp,sp,32 51510: e13ffd15 stw r4,-12(fp) 51514: e17ffe15 stw r5,-8(fp) 51518: e1bfff15 stw r6,-4(fp) alt_dev* dev; alt_fd* fd; int index = -1; 5151c: 00bfffc4 movi r2,-1 51520: e0bff915 stw r2,-28(fp) int status = -ENODEV; 51524: 00bffb44 movi r2,-19 51528: e0bffa15 stw r2,-24(fp) int isafs = 0; 5152c: e03ffb15 stw zero,-20(fp) /* * Check the device list, to see if a device with a matching name is * registered. */ if (!(dev = alt_find_dev (file, &alt_dev_list))) 51530: d1600804 addi r5,gp,-32736 51534: e13ffd17 ldw r4,-12(fp) 51538: 00519ac0 call 519ac 5153c: e0bff815 stw r2,-32(fp) 51540: e0bff817 ldw r2,-32(fp) 51544: 1000051e bne r2,zero,5155c { /* No matching device, so try the filesystem list */ dev = alt_find_file (file); 51548: e13ffd17 ldw r4,-12(fp) 5154c: 0051a3c0 call 51a3c 51550: e0bff815 stw r2,-32(fp) isafs = 1; 51554: 00800044 movi r2,1 51558: e0bffb15 stw r2,-20(fp) /* * If a matching device or filesystem is found, allocate a file descriptor. */ if (dev) 5155c: e0bff817 ldw r2,-32(fp) 51560: 10002b26 beq r2,zero,51610 { if ((index = alt_get_fd (dev)) < 0) 51564: e13ff817 ldw r4,-32(fp) 51568: 0051b440 call 51b44 5156c: e0bff915 stw r2,-28(fp) 51570: e0bff917 ldw r2,-28(fp) 51574: 1000030e bge r2,zero,51584 { status = index; 51578: e0bff917 ldw r2,-28(fp) 5157c: e0bffa15 stw r2,-24(fp) 51580: 00002506 br 51618 } else { fd = &alt_fd_list[index]; 51584: 01400304 movi r5,12 51588: e13ff917 ldw r4,-28(fp) 5158c: 004c9f80 call 4c9f8 <__mulsi3> 51590: 1007883a mov r3,r2 51594: 00800174 movhi r2,5 51598: 108bca04 addi r2,r2,12072 5159c: 1885883a add r2,r3,r2 515a0: e0bffc15 stw r2,-16(fp) fd->fd_flags = (flags & ~ALT_FD_FLAGS_MASK); 515a4: e0fffe17 ldw r3,-8(fp) 515a8: 00900034 movhi r2,16384 515ac: 10bfffc4 addi r2,r2,-1 515b0: 1886703a and r3,r3,r2 515b4: e0bffc17 ldw r2,-16(fp) 515b8: 10c00215 stw r3,8(r2) /* If this is a device, ensure it isn't already locked */ if (isafs || ((status = alt_file_locked (fd)) >= 0)) 515bc: e0bffb17 ldw r2,-20(fp) 515c0: 1000051e bne r2,zero,515d8 515c4: e13ffc17 ldw r4,-16(fp) 515c8: 00514140 call 51414 515cc: e0bffa15 stw r2,-24(fp) 515d0: e0bffa17 ldw r2,-24(fp) 515d4: 10001016 blt r2,zero,51618 /* * If the device or filesystem provides an open() callback function, * call it now to perform any device/filesystem specific operations. */ status = (dev->open) ? dev->open(fd, file, flags, mode): 0; 515d8: e0bff817 ldw r2,-32(fp) 515dc: 10800317 ldw r2,12(r2) 515e0: 10000826 beq r2,zero,51604 515e4: e0bff817 ldw r2,-32(fp) 515e8: 10800317 ldw r2,12(r2) 515ec: e1ffff17 ldw r7,-4(fp) 515f0: e1bffe17 ldw r6,-8(fp) 515f4: e17ffd17 ldw r5,-12(fp) 515f8: e13ffc17 ldw r4,-16(fp) 515fc: 103ee83a callr r2 51600: 00000106 br 51608 51604: 0005883a mov r2,zero 51608: e0bffa15 stw r2,-24(fp) 5160c: 00000206 br 51618 } } } else { status = -ENODEV; 51610: 00bffb44 movi r2,-19 51614: e0bffa15 stw r2,-24(fp) } /* Allocation failed, so clean up and return an error */ if (status < 0) 51618: e0bffa17 ldw r2,-24(fp) 5161c: 1000090e bge r2,zero,51644 { alt_release_fd (index); 51620: e13ff917 ldw r4,-28(fp) 51624: 004ef7c0 call 4ef7c ALT_ERRNO = -status; 51628: 00513d80 call 513d8 5162c: 1007883a mov r3,r2 51630: e0bffa17 ldw r2,-24(fp) 51634: 0085c83a sub r2,zero,r2 51638: 18800015 stw r2,0(r3) return -1; 5163c: 00bfffc4 movi r2,-1 51640: 00000106 br 51648 } /* return the reference upon success */ return index; 51644: e0bff917 ldw r2,-28(fp) } 51648: e037883a mov sp,fp 5164c: dfc00117 ldw ra,4(sp) 51650: df000017 ldw fp,0(sp) 51654: dec00204 addi sp,sp,8 51658: f800283a ret 0005165c : * alarms. Alternatively an alarm can unregister itself by returning zero when * the alarm executes. */ void alt_alarm_stop (alt_alarm* alarm) { 5165c: defffa04 addi sp,sp,-24 51660: df000515 stw fp,20(sp) 51664: df000504 addi fp,sp,20 51668: e13fff15 stw r4,-4(fp) static ALT_INLINE alt_irq_context ALT_ALWAYS_INLINE alt_irq_disable_all (void) { alt_irq_context context; NIOS2_READ_STATUS (context); 5166c: 0005303a rdctl r2,status 51670: e0bffc15 stw r2,-16(fp) NIOS2_WRITE_STATUS (context & ~NIOS2_STATUS_PIE_MSK); 51674: e0fffc17 ldw r3,-16(fp) 51678: 00bfff84 movi r2,-2 5167c: 1884703a and r2,r3,r2 51680: 1001703a wrctl status,r2 return context; 51684: e0bffc17 ldw r2,-16(fp) alt_irq_context irq_context; irq_context = alt_irq_disable_all(); 51688: e0bffb15 stw r2,-20(fp) alt_llist_remove (&alarm->llist); 5168c: e0bfff17 ldw r2,-4(fp) 51690: e0bffd15 stw r2,-12(fp) * input argument is the element to remove. */ static ALT_INLINE void ALT_ALWAYS_INLINE alt_llist_remove(alt_llist* entry) { entry->next->previous = entry->previous; 51694: e0bffd17 ldw r2,-12(fp) 51698: 10800017 ldw r2,0(r2) 5169c: e0fffd17 ldw r3,-12(fp) 516a0: 18c00117 ldw r3,4(r3) 516a4: 10c00115 stw r3,4(r2) entry->previous->next = entry->next; 516a8: e0bffd17 ldw r2,-12(fp) 516ac: 10800117 ldw r2,4(r2) 516b0: e0fffd17 ldw r3,-12(fp) 516b4: 18c00017 ldw r3,0(r3) 516b8: 10c00015 stw r3,0(r2) /* * Set the entry to point to itself, so that any further calls to * alt_llist_remove() are harmless. */ entry->previous = entry; 516bc: e0bffd17 ldw r2,-12(fp) 516c0: e0fffd17 ldw r3,-12(fp) 516c4: 10c00115 stw r3,4(r2) entry->next = entry; 516c8: e0bffd17 ldw r2,-12(fp) 516cc: e0fffd17 ldw r3,-12(fp) 516d0: 10c00015 stw r3,0(r2) 516d4: e0bffb17 ldw r2,-20(fp) 516d8: e0bffe15 stw r2,-8(fp) status &= ~NIOS2_STATUS_PIE_MSK; status |= (context & NIOS2_STATUS_PIE_MSK); NIOS2_WRITE_STATUS (status); #else NIOS2_WRITE_STATUS (context); 516dc: e0bffe17 ldw r2,-8(fp) 516e0: 1001703a wrctl status,r2 alt_irq_enable_all (irq_context); } 516e4: 0001883a nop 516e8: e037883a mov sp,fp 516ec: df000017 ldw fp,0(sp) 516f0: dec00104 addi sp,sp,4 516f4: f800283a ret 000516f8 : * * alt_tick() is expected to run at interrupt level. */ void alt_tick (void) { 516f8: defffb04 addi sp,sp,-20 516fc: dfc00415 stw ra,16(sp) 51700: df000315 stw fp,12(sp) 51704: df000304 addi fp,sp,12 alt_alarm* next; alt_alarm* alarm = (alt_alarm*) alt_alarm_list.next; 51708: d0a00f17 ldw r2,-32708(gp) 5170c: e0bffd15 stw r2,-12(fp) alt_u32 next_callback; /* update the tick counter */ _alt_nticks++; 51710: d0a72717 ldw r2,-25444(gp) 51714: 10800044 addi r2,r2,1 51718: d0a72715 stw r2,-25444(gp) /* process the registered callbacks */ while (alarm != (alt_alarm*) &alt_alarm_list) 5171c: 00002e06 br 517d8 { next = (alt_alarm*) alarm->llist.next; 51720: e0bffd17 ldw r2,-12(fp) 51724: 10800017 ldw r2,0(r2) 51728: e0bffe15 stw r2,-8(fp) /* * Upon the tick-counter rolling over it is safe to clear the * roll-over flag; once the flag is cleared this (or subsequnt) * tick events are enabled to generate an alarm event. */ if ((alarm->rollover) && (_alt_nticks == 0)) 5172c: e0bffd17 ldw r2,-12(fp) 51730: 10800403 ldbu r2,16(r2) 51734: 10803fcc andi r2,r2,255 51738: 10000426 beq r2,zero,5174c 5173c: d0a72717 ldw r2,-25444(gp) 51740: 1000021e bne r2,zero,5174c { alarm->rollover = 0; 51744: e0bffd17 ldw r2,-12(fp) 51748: 10000405 stb zero,16(r2) } /* if the alarm period has expired, make the callback */ if ((alarm->time <= _alt_nticks) && (alarm->rollover == 0)) 5174c: e0bffd17 ldw r2,-12(fp) 51750: 10800217 ldw r2,8(r2) 51754: d0e72717 ldw r3,-25444(gp) 51758: 18801d36 bltu r3,r2,517d0 5175c: e0bffd17 ldw r2,-12(fp) 51760: 10800403 ldbu r2,16(r2) 51764: 10803fcc andi r2,r2,255 51768: 1000191e bne r2,zero,517d0 { next_callback = alarm->callback (alarm->context); 5176c: e0bffd17 ldw r2,-12(fp) 51770: 10800317 ldw r2,12(r2) 51774: e0fffd17 ldw r3,-12(fp) 51778: 18c00517 ldw r3,20(r3) 5177c: 1809883a mov r4,r3 51780: 103ee83a callr r2 51784: e0bfff15 stw r2,-4(fp) /* deactivate the alarm if the return value is zero */ if (next_callback == 0) 51788: e0bfff17 ldw r2,-4(fp) 5178c: 1000031e bne r2,zero,5179c { alt_alarm_stop (alarm); 51790: e13ffd17 ldw r4,-12(fp) 51794: 005165c0 call 5165c 51798: 00000d06 br 517d0 } else { alarm->time += next_callback; 5179c: e0bffd17 ldw r2,-12(fp) 517a0: 10c00217 ldw r3,8(r2) 517a4: e0bfff17 ldw r2,-4(fp) 517a8: 1887883a add r3,r3,r2 517ac: e0bffd17 ldw r2,-12(fp) 517b0: 10c00215 stw r3,8(r2) /* * If the desired alarm time causes a roll-over, set the rollover * flag. This will prevent the subsequent tick event from causing * an alarm too early. */ if(alarm->time < _alt_nticks) 517b4: e0bffd17 ldw r2,-12(fp) 517b8: 10c00217 ldw r3,8(r2) 517bc: d0a72717 ldw r2,-25444(gp) 517c0: 1880032e bgeu r3,r2,517d0 { alarm->rollover = 1; 517c4: e0bffd17 ldw r2,-12(fp) 517c8: 00c00044 movi r3,1 517cc: 10c00405 stb r3,16(r2) } } } alarm = next; 517d0: e0bffe17 ldw r2,-8(fp) 517d4: e0bffd15 stw r2,-12(fp) _alt_nticks++; /* process the registered callbacks */ while (alarm != (alt_alarm*) &alt_alarm_list) 517d8: e0fffd17 ldw r3,-12(fp) 517dc: d0a00f04 addi r2,gp,-32708 517e0: 18bfcf1e bne r3,r2,51720 <__alt_data_end+0xfffdf720> /* * Update the operating system specific timer facilities. */ ALT_OS_TIME_TICK(); 517e4: 0001883a nop } 517e8: 0001883a nop 517ec: e037883a mov sp,fp 517f0: dfc00117 ldw ra,4(sp) 517f4: df000017 ldw fp,0(sp) 517f8: dec00204 addi sp,sp,8 517fc: f800283a ret 00051800 : #if defined (__GNUC__) && __GNUC__ >= 4 int ALT_USLEEP (useconds_t us) #else unsigned int ALT_USLEEP (unsigned int us) #endif { 51800: defffd04 addi sp,sp,-12 51804: dfc00215 stw ra,8(sp) 51808: df000115 stw fp,4(sp) 5180c: df000104 addi fp,sp,4 51810: e13fff15 stw r4,-4(fp) return alt_busy_sleep(us); 51814: e13fff17 ldw r4,-4(fp) 51818: 00518540 call 51854 } 5181c: e037883a mov sp,fp 51820: dfc00117 ldw ra,4(sp) 51824: df000017 ldw fp,0(sp) 51828: dec00204 addi sp,sp,8 5182c: f800283a ret 00051830 : /* * To initialize the internal interrupt controller, just clear the IENABLE * register so that all possible IRQs are disabled. */ void altera_nios2_gen2_irq_init(void) { 51830: deffff04 addi sp,sp,-4 51834: df000015 stw fp,0(sp) 51838: d839883a mov fp,sp NIOS2_WRITE_IENABLE(0); 5183c: 000170fa wrctl ienable,zero } 51840: 0001883a nop 51844: e037883a mov sp,fp 51848: df000017 ldw fp,0(sp) 5184c: dec00104 addi sp,sp,4 51850: f800283a ret 00051854 : #include "alt_types.h" #include "priv/alt_busy_sleep.h" unsigned int alt_busy_sleep (unsigned int us) { 51854: defffa04 addi sp,sp,-24 51858: dfc00515 stw ra,20(sp) 5185c: df000415 stw fp,16(sp) 51860: df000404 addi fp,sp,16 51864: e13fff15 stw r4,-4(fp) int big_loops; alt_u32 cycles_per_loop; if (!strcmp(NIOS2_CPU_IMPLEMENTATION,"tiny")) { cycles_per_loop = 9; 51868: 00800244 movi r2,9 5186c: e0bffd15 stw r2,-12(fp) cycles_per_loop = 3; } big_loops = us / (INT_MAX/ (ALT_CPU_FREQ/(cycles_per_loop * 1000000))); 51870: 014003f4 movhi r5,15 51874: 29509004 addi r5,r5,16960 51878: e13ffd17 ldw r4,-12(fp) 5187c: 004c9f80 call 4c9f8 <__mulsi3> 51880: 100b883a mov r5,r2 51884: 0100bef4 movhi r4,763 51888: 213c2004 addi r4,r4,-3968 5188c: 004c93c0 call 4c93c <__udivsi3> { cycles_per_loop = 3; } big_loops = us / (INT_MAX/ 51890: 100b883a mov r5,r2 51894: 01200034 movhi r4,32768 51898: 213fffc4 addi r4,r4,-1 5189c: 004c93c0 call 4c93c <__udivsi3> 518a0: 100b883a mov r5,r2 518a4: e13fff17 ldw r4,-4(fp) 518a8: 004c93c0 call 4c93c <__udivsi3> 518ac: e0bffe15 stw r2,-8(fp) (ALT_CPU_FREQ/(cycles_per_loop * 1000000))); if (big_loops) 518b0: e0bffe17 ldw r2,-8(fp) 518b4: 10002a26 beq r2,zero,51960 { for(i=0;i /* * Do NOT Try to single step the asm statement below * (single step will never return) * Step out of this function or set a breakpoint after the asm statements */ __asm__ volatile ( 518c0: 00a00034 movhi r2,32768 518c4: 10bfffc4 addi r2,r2,-1 518c8: 10bfffc4 addi r2,r2,-1 518cc: 103ffe1e bne r2,zero,518c8 <__alt_data_end+0xfffdf8c8> "\n\t.pushsection .debug_alt_sim_info" "\n\t.int 4, 0, 0b, 1b" "\n\t.popsection" :: "r" (INT_MAX)); us -= (INT_MAX/(ALT_CPU_FREQ/ (cycles_per_loop * 1000000))); 518d0: 014003f4 movhi r5,15 518d4: 29509004 addi r5,r5,16960 518d8: e13ffd17 ldw r4,-12(fp) 518dc: 004c9f80 call 4c9f8 <__mulsi3> "\n1:" "\n\t.pushsection .debug_alt_sim_info" "\n\t.int 4, 0, 0b, 1b" "\n\t.popsection" :: "r" (INT_MAX)); us -= (INT_MAX/(ALT_CPU_FREQ/ 518e0: 100b883a mov r5,r2 518e4: 0100bef4 movhi r4,763 518e8: 213c2004 addi r4,r4,-3968 518ec: 004c93c0 call 4c93c <__udivsi3> 518f0: 100b883a mov r5,r2 518f4: 01200034 movhi r4,32768 518f8: 213fffc4 addi r4,r4,-1 518fc: 004c93c0 call 4c93c <__udivsi3> 51900: 1007883a mov r3,r2 51904: e0bfff17 ldw r2,-4(fp) 51908: 10c5c83a sub r2,r2,r3 5190c: e0bfff15 stw r2,-4(fp) big_loops = us / (INT_MAX/ (ALT_CPU_FREQ/(cycles_per_loop * 1000000))); if (big_loops) { for(i=0;i "\n\tbne %0,zero,0b" "\n1:" "\n\t.pushsection .debug_alt_sim_info" "\n\t.int 4, 0, 0b, 1b" "\n\t.popsection" :: "r" (us*(ALT_CPU_FREQ/(cycles_per_loop * 1000000)))); 51928: 014003f4 movhi r5,15 5192c: 29509004 addi r5,r5,16960 51930: e13ffd17 ldw r4,-12(fp) 51934: 004c9f80 call 4c9f8 <__mulsi3> 51938: 100b883a mov r5,r2 5193c: 0100bef4 movhi r4,763 51940: 213c2004 addi r4,r4,-3968 51944: 004c93c0 call 4c93c <__udivsi3> 51948: e17fff17 ldw r5,-4(fp) 5194c: 1009883a mov r4,r2 51950: 004c9f80 call 4c9f8 <__mulsi3> /* * Do NOT Try to single step the asm statement below * (single step will never return) * Step out of this function or set a breakpoint after the asm statements */ __asm__ volatile ( 51954: 10bfffc4 addi r2,r2,-1 51958: 103ffe1e bne r2,zero,51954 <__alt_data_end+0xfffdf954> 5195c: 00000d06 br 51994 "\n\tbgt %0,zero,0b" "\n1:" "\n\t.pushsection .debug_alt_sim_info" "\n\t.int 4, 0, 0b, 1b" "\n\t.popsection" :: "r" (us*(ALT_CPU_FREQ/(cycles_per_loop * 1000000)))); 51960: 014003f4 movhi r5,15 51964: 29509004 addi r5,r5,16960 51968: e13ffd17 ldw r4,-12(fp) 5196c: 004c9f80 call 4c9f8 <__mulsi3> 51970: 100b883a mov r5,r2 51974: 0100bef4 movhi r4,763 51978: 213c2004 addi r4,r4,-3968 5197c: 004c93c0 call 4c93c <__udivsi3> 51980: e17fff17 ldw r5,-4(fp) 51984: 1009883a mov r4,r2 51988: 004c9f80 call 4c9f8 <__mulsi3> /* * Do NOT Try to single step the asm statement below * (single step will never return) * Step out of this function or set a breakpoint after the asm statements */ __asm__ volatile ( 5198c: 10bfffc4 addi r2,r2,-1 51990: 00bffe16 blt zero,r2,5198c <__alt_data_end+0xfffdf98c> "\n\t.int 4, 0, 0b, 1b" "\n\t.popsection" :: "r" (us*(ALT_CPU_FREQ/(cycles_per_loop * 1000000)))); } #endif /* #ifndef ALT_SIM_OPTIMIZE */ return 0; 51994: 0005883a mov r2,zero } 51998: e037883a mov sp,fp 5199c: dfc00117 ldw ra,4(sp) 519a0: df000017 ldw fp,0(sp) 519a4: dec00204 addi sp,sp,8 519a8: f800283a ret 000519ac : * "name" must be an exact match for the devices registered name for a match to * be found. */ alt_dev* alt_find_dev(const char* name, alt_llist* llist) { 519ac: defffa04 addi sp,sp,-24 519b0: dfc00515 stw ra,20(sp) 519b4: df000415 stw fp,16(sp) 519b8: df000404 addi fp,sp,16 519bc: e13ffe15 stw r4,-8(fp) 519c0: e17fff15 stw r5,-4(fp) alt_dev* next = (alt_dev*) llist->next; 519c4: e0bfff17 ldw r2,-4(fp) 519c8: 10800017 ldw r2,0(r2) 519cc: e0bffc15 stw r2,-16(fp) alt_32 len; len = strlen(name) + 1; 519d0: e13ffe17 ldw r4,-8(fp) 519d4: 00490200 call 49020 519d8: 10800044 addi r2,r2,1 519dc: e0bffd15 stw r2,-12(fp) /* * Check each list entry in turn, until a match is found, or we reach the * end of the list (i.e. next winds up pointing back to the list head). */ while (next != (alt_dev*) llist) 519e0: 00000d06 br 51a18 /* * memcmp() is used here rather than strcmp() in order to reduce the size * of the executable. */ if (!memcmp (next->name, name, len)) 519e4: e0bffc17 ldw r2,-16(fp) 519e8: 10800217 ldw r2,8(r2) 519ec: e0fffd17 ldw r3,-12(fp) 519f0: 180d883a mov r6,r3 519f4: e17ffe17 ldw r5,-8(fp) 519f8: 1009883a mov r4,r2 519fc: 0051cf00 call 51cf0 51a00: 1000021e bne r2,zero,51a0c { /* match found */ return next; 51a04: e0bffc17 ldw r2,-16(fp) 51a08: 00000706 br 51a28 } next = (alt_dev*) next->llist.next; 51a0c: e0bffc17 ldw r2,-16(fp) 51a10: 10800017 ldw r2,0(r2) 51a14: e0bffc15 stw r2,-16(fp) /* * Check each list entry in turn, until a match is found, or we reach the * end of the list (i.e. next winds up pointing back to the list head). */ while (next != (alt_dev*) llist) 51a18: e0fffc17 ldw r3,-16(fp) 51a1c: e0bfff17 ldw r2,-4(fp) 51a20: 18bff01e bne r3,r2,519e4 <__alt_data_end+0xfffdf9e4> next = (alt_dev*) next->llist.next; } /* No match found */ return NULL; 51a24: 0005883a mov r2,zero } 51a28: e037883a mov sp,fp 51a2c: dfc00117 ldw ra,4(sp) 51a30: df000017 ldw fp,0(sp) 51a34: dec00204 addi sp,sp,8 51a38: f800283a ret 00051a3c : * either '/' or '\0' is the prefix of the filename. For example the filename: * "/myfilesystem/junk.txt" would match: "/myfilesystem", but not: "/myfile". */ alt_dev* alt_find_file (const char* name) { 51a3c: defffb04 addi sp,sp,-20 51a40: dfc00415 stw ra,16(sp) 51a44: df000315 stw fp,12(sp) 51a48: df000304 addi fp,sp,12 51a4c: e13fff15 stw r4,-4(fp) alt_dev* next = (alt_dev*) alt_fs_list.next; 51a50: d0a00617 ldw r2,-32744(gp) 51a54: e0bffd15 stw r2,-12(fp) /* * Check each list entry in turn, until a match is found, or we reach the * end of the list (i.e. next winds up pointing back to the list head). */ while (next != (alt_dev*) &alt_fs_list) 51a58: 00003106 br 51b20 { len = strlen(next->name); 51a5c: e0bffd17 ldw r2,-12(fp) 51a60: 10800217 ldw r2,8(r2) 51a64: 1009883a mov r4,r2 51a68: 00490200 call 49020 51a6c: e0bffe15 stw r2,-8(fp) if (next->name[len-1] == '/') 51a70: e0bffd17 ldw r2,-12(fp) 51a74: 10c00217 ldw r3,8(r2) 51a78: e0bffe17 ldw r2,-8(fp) 51a7c: 10bfffc4 addi r2,r2,-1 51a80: 1885883a add r2,r3,r2 51a84: 10800003 ldbu r2,0(r2) 51a88: 10803fcc andi r2,r2,255 51a8c: 1080201c xori r2,r2,128 51a90: 10bfe004 addi r2,r2,-128 51a94: 10800bd8 cmpnei r2,r2,47 51a98: 1000031e bne r2,zero,51aa8 { len -= 1; 51a9c: e0bffe17 ldw r2,-8(fp) 51aa0: 10bfffc4 addi r2,r2,-1 51aa4: e0bffe15 stw r2,-8(fp) } if (((name[len] == '/') || (name[len] == '\0')) && 51aa8: e0bffe17 ldw r2,-8(fp) 51aac: e0ffff17 ldw r3,-4(fp) 51ab0: 1885883a add r2,r3,r2 51ab4: 10800003 ldbu r2,0(r2) 51ab8: 10803fcc andi r2,r2,255 51abc: 1080201c xori r2,r2,128 51ac0: 10bfe004 addi r2,r2,-128 51ac4: 10800be0 cmpeqi r2,r2,47 51ac8: 1000081e bne r2,zero,51aec 51acc: e0bffe17 ldw r2,-8(fp) 51ad0: e0ffff17 ldw r3,-4(fp) 51ad4: 1885883a add r2,r3,r2 51ad8: 10800003 ldbu r2,0(r2) 51adc: 10803fcc andi r2,r2,255 51ae0: 1080201c xori r2,r2,128 51ae4: 10bfe004 addi r2,r2,-128 51ae8: 10000a1e bne r2,zero,51b14 !memcmp (next->name, name, len)) 51aec: e0bffd17 ldw r2,-12(fp) 51af0: 10800217 ldw r2,8(r2) 51af4: e0fffe17 ldw r3,-8(fp) 51af8: 180d883a mov r6,r3 51afc: e17fff17 ldw r5,-4(fp) 51b00: 1009883a mov r4,r2 51b04: 0051cf00 call 51cf0 if (next->name[len-1] == '/') { len -= 1; } if (((name[len] == '/') || (name[len] == '\0')) && 51b08: 1000021e bne r2,zero,51b14 !memcmp (next->name, name, len)) { /* match found */ return next; 51b0c: e0bffd17 ldw r2,-12(fp) 51b10: 00000706 br 51b30 } next = (alt_dev*) next->llist.next; 51b14: e0bffd17 ldw r2,-12(fp) 51b18: 10800017 ldw r2,0(r2) 51b1c: e0bffd15 stw r2,-12(fp) /* * Check each list entry in turn, until a match is found, or we reach the * end of the list (i.e. next winds up pointing back to the list head). */ while (next != (alt_dev*) &alt_fs_list) 51b20: e0fffd17 ldw r3,-12(fp) 51b24: d0a00604 addi r2,gp,-32744 51b28: 18bfcc1e bne r3,r2,51a5c <__alt_data_end+0xfffdfa5c> next = (alt_dev*) next->llist.next; } /* No match found */ return NULL; 51b2c: 0005883a mov r2,zero } 51b30: e037883a mov sp,fp 51b34: dfc00117 ldw ra,4(sp) 51b38: df000017 ldw fp,0(sp) 51b3c: dec00204 addi sp,sp,8 51b40: f800283a ret 00051b44 : * the offset of the file descriptor within the file descriptor array). A * negative value indicates failure. */ int alt_get_fd (alt_dev* dev) { 51b44: defffa04 addi sp,sp,-24 51b48: dfc00515 stw ra,20(sp) 51b4c: df000415 stw fp,16(sp) 51b50: dc000315 stw r16,12(sp) 51b54: df000404 addi fp,sp,16 51b58: e13ffe15 stw r4,-8(fp) alt_32 i; int rc = -EMFILE; 51b5c: 00bffa04 movi r2,-24 51b60: e0bffd15 stw r2,-12(fp) * indicates the highest file descriptor ever allocated. This is used to * improve efficency when searching the file descriptor list, and * therefore reduce contention on the alt_fd_list_lock semaphore. */ for (i = 0; i < ALT_MAX_FD; i++) 51b64: e03ffc15 stw zero,-16(fp) 51b68: 00001d06 br 51be0 { if (!alt_fd_list[i].dev) 51b6c: 04000174 movhi r16,5 51b70: 840bca04 addi r16,r16,12072 51b74: e0bffc17 ldw r2,-16(fp) 51b78: 01400304 movi r5,12 51b7c: 1009883a mov r4,r2 51b80: 004c9f80 call 4c9f8 <__mulsi3> 51b84: 8085883a add r2,r16,r2 51b88: 10800017 ldw r2,0(r2) 51b8c: 1000111e bne r2,zero,51bd4 { alt_fd_list[i].dev = dev; 51b90: 04000174 movhi r16,5 51b94: 840bca04 addi r16,r16,12072 51b98: e0bffc17 ldw r2,-16(fp) 51b9c: 01400304 movi r5,12 51ba0: 1009883a mov r4,r2 51ba4: 004c9f80 call 4c9f8 <__mulsi3> 51ba8: 8085883a add r2,r16,r2 51bac: e0fffe17 ldw r3,-8(fp) 51bb0: 10c00015 stw r3,0(r2) if (i > alt_max_fd) 51bb4: d0e00a17 ldw r3,-32728(gp) 51bb8: e0bffc17 ldw r2,-16(fp) 51bbc: 1880020e bge r3,r2,51bc8 { alt_max_fd = i; 51bc0: e0bffc17 ldw r2,-16(fp) 51bc4: d0a00a15 stw r2,-32728(gp) } rc = i; 51bc8: e0bffc17 ldw r2,-16(fp) 51bcc: e0bffd15 stw r2,-12(fp) goto alt_get_fd_exit; 51bd0: 00000606 br 51bec * indicates the highest file descriptor ever allocated. This is used to * improve efficency when searching the file descriptor list, and * therefore reduce contention on the alt_fd_list_lock semaphore. */ for (i = 0; i < ALT_MAX_FD; i++) 51bd4: e0bffc17 ldw r2,-16(fp) 51bd8: 10800044 addi r2,r2,1 51bdc: e0bffc15 stw r2,-16(fp) 51be0: e0bffc17 ldw r2,-16(fp) 51be4: 10800810 cmplti r2,r2,32 51be8: 103fe01e bne r2,zero,51b6c <__alt_data_end+0xfffdfb6c> * file descriptor pool. */ ALT_SEM_POST(alt_fd_list_lock); return rc; 51bec: e0bffd17 ldw r2,-12(fp) } 51bf0: e6ffff04 addi sp,fp,-4 51bf4: dfc00217 ldw ra,8(sp) 51bf8: df000117 ldw fp,4(sp) 51bfc: dc000017 ldw r16,0(sp) 51c00: dec00304 addi sp,sp,12 51c04: f800283a ret 00051c08 : * Return: 1: BADADDR (bad_addr argument to handler) is valid * 0: BADADDR is not valid */ int alt_exception_cause_generated_bad_addr(alt_exception_cause cause) { 51c08: defffe04 addi sp,sp,-8 51c0c: df000115 stw fp,4(sp) 51c10: df000104 addi fp,sp,4 51c14: e13fff15 stw r4,-4(fp) switch (cause) { 51c18: e0bfff17 ldw r2,-4(fp) 51c1c: 10bffe84 addi r2,r2,-6 51c20: 10c00428 cmpgeui r3,r2,16 51c24: 18001a1e bne r3,zero,51c90 51c28: 100690ba slli r3,r2,2 51c2c: 00800174 movhi r2,5 51c30: 10871004 addi r2,r2,7232 51c34: 1885883a add r2,r3,r2 51c38: 10800017 ldw r2,0(r2) 51c3c: 1000683a jmp r2 51c40: 00051c80 call 51c8 <__alt_mem_onchip_memory2-0x3ae38> 51c44: 00051c80 call 51c8 <__alt_mem_onchip_memory2-0x3ae38> 51c48: 00051c90 cmplti zero,zero,5234 51c4c: 00051c90 cmplti zero,zero,5234 51c50: 00051c90 cmplti zero,zero,5234 51c54: 00051c80 call 51c8 <__alt_mem_onchip_memory2-0x3ae38> 51c58: 00051c88 cmpgei zero,zero,5234 51c5c: 00051c90 cmplti zero,zero,5234 51c60: 00051c80 call 51c8 <__alt_mem_onchip_memory2-0x3ae38> 51c64: 00051c80 call 51c8 <__alt_mem_onchip_memory2-0x3ae38> 51c68: 00051c90 cmplti zero,zero,5234 51c6c: 00051c80 call 51c8 <__alt_mem_onchip_memory2-0x3ae38> 51c70: 00051c88 cmpgei zero,zero,5234 51c74: 00051c90 cmplti zero,zero,5234 51c78: 00051c90 cmplti zero,zero,5234 51c7c: 00051c80 call 51c8 <__alt_mem_onchip_memory2-0x3ae38> case NIOS2_EXCEPTION_MISALIGNED_TARGET_PC: case NIOS2_EXCEPTION_TLB_READ_PERM_VIOLATION: case NIOS2_EXCEPTION_TLB_WRITE_PERM_VIOLATION: case NIOS2_EXCEPTION_MPU_DATA_REGION_VIOLATION: case NIOS2_EXCEPTION_ECC_DATA_ERR: return 1; 51c80: 00800044 movi r2,1 51c84: 00000306 br 51c94 case NIOS2_EXCEPTION_TLB_MISS: case NIOS2_EXCEPTION_ECC_TLB_ERR: return 0; 51c88: 0005883a mov r2,zero 51c8c: 00000106 br 51c94 default: return 0; 51c90: 0005883a mov r2,zero } } 51c94: e037883a mov sp,fp 51c98: df000017 ldw fp,0(sp) 51c9c: dec00104 addi sp,sp,4 51ca0: f800283a ret 00051ca4 : 51ca4: 200b883a mov r5,r4 51ca8: 000f883a mov r7,zero 51cac: 000d883a mov r6,zero 51cb0: 0009883a mov r4,zero 51cb4: 0051d6c1 jmpi 51d6c <__register_exitproc> 00051cb8 : 51cb8: defffe04 addi sp,sp,-8 51cbc: 000b883a mov r5,zero 51cc0: dc000015 stw r16,0(sp) 51cc4: dfc00115 stw ra,4(sp) 51cc8: 2021883a mov r16,r4 51ccc: 0051e840 call 51e84 <__call_exitprocs> 51cd0: 00800174 movhi r2,5 51cd4: 10908a04 addi r2,r2,16936 51cd8: 11000017 ldw r4,0(r2) 51cdc: 20800f17 ldw r2,60(r4) 51ce0: 10000126 beq r2,zero,51ce8 51ce4: 103ee83a callr r2 51ce8: 8009883a mov r4,r16 51cec: 00520040 call 52004 <_exit> 00051cf0 : 51cf0: 01c000c4 movi r7,3 51cf4: 3980192e bgeu r7,r6,51d5c 51cf8: 2144b03a or r2,r4,r5 51cfc: 11c4703a and r2,r2,r7 51d00: 10000f26 beq r2,zero,51d40 51d04: 20800003 ldbu r2,0(r4) 51d08: 28c00003 ldbu r3,0(r5) 51d0c: 10c0151e bne r2,r3,51d64 51d10: 31bfff84 addi r6,r6,-2 51d14: 01ffffc4 movi r7,-1 51d18: 00000406 br 51d2c 51d1c: 20800003 ldbu r2,0(r4) 51d20: 28c00003 ldbu r3,0(r5) 51d24: 31bfffc4 addi r6,r6,-1 51d28: 10c00e1e bne r2,r3,51d64 51d2c: 21000044 addi r4,r4,1 51d30: 29400044 addi r5,r5,1 51d34: 31fff91e bne r6,r7,51d1c <__alt_data_end+0xfffdfd1c> 51d38: 0005883a mov r2,zero 51d3c: f800283a ret 51d40: 20c00017 ldw r3,0(r4) 51d44: 28800017 ldw r2,0(r5) 51d48: 18bfee1e bne r3,r2,51d04 <__alt_data_end+0xfffdfd04> 51d4c: 31bfff04 addi r6,r6,-4 51d50: 21000104 addi r4,r4,4 51d54: 29400104 addi r5,r5,4 51d58: 39bff936 bltu r7,r6,51d40 <__alt_data_end+0xfffdfd40> 51d5c: 303fe91e bne r6,zero,51d04 <__alt_data_end+0xfffdfd04> 51d60: 003ff506 br 51d38 <__alt_data_end+0xfffdfd38> 51d64: 10c5c83a sub r2,r2,r3 51d68: f800283a ret 00051d6c <__register_exitproc>: 51d6c: defffa04 addi sp,sp,-24 51d70: dc000315 stw r16,12(sp) 51d74: 04000174 movhi r16,5 51d78: 84108a04 addi r16,r16,16936 51d7c: 80c00017 ldw r3,0(r16) 51d80: dc400415 stw r17,16(sp) 51d84: dfc00515 stw ra,20(sp) 51d88: 18805217 ldw r2,328(r3) 51d8c: 2023883a mov r17,r4 51d90: 10003726 beq r2,zero,51e70 <__register_exitproc+0x104> 51d94: 10c00117 ldw r3,4(r2) 51d98: 010007c4 movi r4,31 51d9c: 20c00e16 blt r4,r3,51dd8 <__register_exitproc+0x6c> 51da0: 1a000044 addi r8,r3,1 51da4: 8800221e bne r17,zero,51e30 <__register_exitproc+0xc4> 51da8: 18c00084 addi r3,r3,2 51dac: 18c7883a add r3,r3,r3 51db0: 18c7883a add r3,r3,r3 51db4: 12000115 stw r8,4(r2) 51db8: 10c7883a add r3,r2,r3 51dbc: 19400015 stw r5,0(r3) 51dc0: 0005883a mov r2,zero 51dc4: dfc00517 ldw ra,20(sp) 51dc8: dc400417 ldw r17,16(sp) 51dcc: dc000317 ldw r16,12(sp) 51dd0: dec00604 addi sp,sp,24 51dd4: f800283a ret 51dd8: 00800034 movhi r2,0 51ddc: 10800004 addi r2,r2,0 51de0: 10002626 beq r2,zero,51e7c <__register_exitproc+0x110> 51de4: 01006404 movi r4,400 51de8: d9400015 stw r5,0(sp) 51dec: d9800115 stw r6,4(sp) 51df0: d9c00215 stw r7,8(sp) 51df4: 00000000 call 0 <__alt_mem_onchip_memory2-0x40000> 51df8: d9400017 ldw r5,0(sp) 51dfc: d9800117 ldw r6,4(sp) 51e00: d9c00217 ldw r7,8(sp) 51e04: 10001d26 beq r2,zero,51e7c <__register_exitproc+0x110> 51e08: 81000017 ldw r4,0(r16) 51e0c: 10000115 stw zero,4(r2) 51e10: 02000044 movi r8,1 51e14: 22405217 ldw r9,328(r4) 51e18: 0007883a mov r3,zero 51e1c: 12400015 stw r9,0(r2) 51e20: 20805215 stw r2,328(r4) 51e24: 10006215 stw zero,392(r2) 51e28: 10006315 stw zero,396(r2) 51e2c: 883fde26 beq r17,zero,51da8 <__alt_data_end+0xfffdfda8> 51e30: 18c9883a add r4,r3,r3 51e34: 2109883a add r4,r4,r4 51e38: 1109883a add r4,r2,r4 51e3c: 21802215 stw r6,136(r4) 51e40: 01800044 movi r6,1 51e44: 12406217 ldw r9,392(r2) 51e48: 30cc983a sll r6,r6,r3 51e4c: 4992b03a or r9,r9,r6 51e50: 12406215 stw r9,392(r2) 51e54: 21c04215 stw r7,264(r4) 51e58: 01000084 movi r4,2 51e5c: 893fd21e bne r17,r4,51da8 <__alt_data_end+0xfffdfda8> 51e60: 11006317 ldw r4,396(r2) 51e64: 218cb03a or r6,r4,r6 51e68: 11806315 stw r6,396(r2) 51e6c: 003fce06 br 51da8 <__alt_data_end+0xfffdfda8> 51e70: 18805304 addi r2,r3,332 51e74: 18805215 stw r2,328(r3) 51e78: 003fc606 br 51d94 <__alt_data_end+0xfffdfd94> 51e7c: 00bfffc4 movi r2,-1 51e80: 003fd006 br 51dc4 <__alt_data_end+0xfffdfdc4> 00051e84 <__call_exitprocs>: 51e84: defff504 addi sp,sp,-44 51e88: df000915 stw fp,36(sp) 51e8c: dd400615 stw r21,24(sp) 51e90: dc800315 stw r18,12(sp) 51e94: dfc00a15 stw ra,40(sp) 51e98: ddc00815 stw r23,32(sp) 51e9c: dd800715 stw r22,28(sp) 51ea0: dd000515 stw r20,20(sp) 51ea4: dcc00415 stw r19,16(sp) 51ea8: dc400215 stw r17,8(sp) 51eac: dc000115 stw r16,4(sp) 51eb0: d9000015 stw r4,0(sp) 51eb4: 2839883a mov fp,r5 51eb8: 04800044 movi r18,1 51ebc: 057fffc4 movi r21,-1 51ec0: 00800174 movhi r2,5 51ec4: 10908a04 addi r2,r2,16936 51ec8: 12000017 ldw r8,0(r2) 51ecc: 45005217 ldw r20,328(r8) 51ed0: 44c05204 addi r19,r8,328 51ed4: a0001c26 beq r20,zero,51f48 <__call_exitprocs+0xc4> 51ed8: a0800117 ldw r2,4(r20) 51edc: 15ffffc4 addi r23,r2,-1 51ee0: b8000d16 blt r23,zero,51f18 <__call_exitprocs+0x94> 51ee4: 14000044 addi r16,r2,1 51ee8: 8421883a add r16,r16,r16 51eec: 8421883a add r16,r16,r16 51ef0: 84402004 addi r17,r16,128 51ef4: a463883a add r17,r20,r17 51ef8: a421883a add r16,r20,r16 51efc: e0001e26 beq fp,zero,51f78 <__call_exitprocs+0xf4> 51f00: 80804017 ldw r2,256(r16) 51f04: e0801c26 beq fp,r2,51f78 <__call_exitprocs+0xf4> 51f08: bdffffc4 addi r23,r23,-1 51f0c: 843fff04 addi r16,r16,-4 51f10: 8c7fff04 addi r17,r17,-4 51f14: bd7ff91e bne r23,r21,51efc <__alt_data_end+0xfffdfefc> 51f18: 00800034 movhi r2,0 51f1c: 10800004 addi r2,r2,0 51f20: 10000926 beq r2,zero,51f48 <__call_exitprocs+0xc4> 51f24: a0800117 ldw r2,4(r20) 51f28: 1000301e bne r2,zero,51fec <__call_exitprocs+0x168> 51f2c: a0800017 ldw r2,0(r20) 51f30: 10003226 beq r2,zero,51ffc <__call_exitprocs+0x178> 51f34: a009883a mov r4,r20 51f38: 98800015 stw r2,0(r19) 51f3c: 00000000 call 0 <__alt_mem_onchip_memory2-0x40000> 51f40: 9d000017 ldw r20,0(r19) 51f44: a03fe41e bne r20,zero,51ed8 <__alt_data_end+0xfffdfed8> 51f48: dfc00a17 ldw ra,40(sp) 51f4c: df000917 ldw fp,36(sp) 51f50: ddc00817 ldw r23,32(sp) 51f54: dd800717 ldw r22,28(sp) 51f58: dd400617 ldw r21,24(sp) 51f5c: dd000517 ldw r20,20(sp) 51f60: dcc00417 ldw r19,16(sp) 51f64: dc800317 ldw r18,12(sp) 51f68: dc400217 ldw r17,8(sp) 51f6c: dc000117 ldw r16,4(sp) 51f70: dec00b04 addi sp,sp,44 51f74: f800283a ret 51f78: a0800117 ldw r2,4(r20) 51f7c: 80c00017 ldw r3,0(r16) 51f80: 10bfffc4 addi r2,r2,-1 51f84: 15c01426 beq r2,r23,51fd8 <__call_exitprocs+0x154> 51f88: 80000015 stw zero,0(r16) 51f8c: 183fde26 beq r3,zero,51f08 <__alt_data_end+0xfffdff08> 51f90: 95c8983a sll r4,r18,r23 51f94: a0806217 ldw r2,392(r20) 51f98: a5800117 ldw r22,4(r20) 51f9c: 2084703a and r2,r4,r2 51fa0: 10000b26 beq r2,zero,51fd0 <__call_exitprocs+0x14c> 51fa4: a0806317 ldw r2,396(r20) 51fa8: 2088703a and r4,r4,r2 51fac: 20000c1e bne r4,zero,51fe0 <__call_exitprocs+0x15c> 51fb0: 89400017 ldw r5,0(r17) 51fb4: d9000017 ldw r4,0(sp) 51fb8: 183ee83a callr r3 51fbc: a0800117 ldw r2,4(r20) 51fc0: 15bfbf1e bne r2,r22,51ec0 <__alt_data_end+0xfffdfec0> 51fc4: 98800017 ldw r2,0(r19) 51fc8: 153fcf26 beq r2,r20,51f08 <__alt_data_end+0xfffdff08> 51fcc: 003fbc06 br 51ec0 <__alt_data_end+0xfffdfec0> 51fd0: 183ee83a callr r3 51fd4: 003ff906 br 51fbc <__alt_data_end+0xfffdffbc> 51fd8: a5c00115 stw r23,4(r20) 51fdc: 003feb06 br 51f8c <__alt_data_end+0xfffdff8c> 51fe0: 89000017 ldw r4,0(r17) 51fe4: 183ee83a callr r3 51fe8: 003ff406 br 51fbc <__alt_data_end+0xfffdffbc> 51fec: a0800017 ldw r2,0(r20) 51ff0: a027883a mov r19,r20 51ff4: 1029883a mov r20,r2 51ff8: 003fb606 br 51ed4 <__alt_data_end+0xfffdfed4> 51ffc: 0005883a mov r2,zero 52000: 003ffb06 br 51ff0 <__alt_data_end+0xfffdfff0> 00052004 <_exit>: * * ALT_EXIT is mapped onto the _exit() system call in alt_syscall.h */ void ALT_EXIT (int exit_code) { 52004: defffd04 addi sp,sp,-12 52008: df000215 stw fp,8(sp) 5200c: df000204 addi fp,sp,8 52010: e13fff15 stw r4,-4(fp) ALT_LOG_PRINT_BOOT("[alt_exit.c] Entering _exit() function.\r\n"); ALT_LOG_PRINT_BOOT("[alt_exit.c] Exit code from main was %d.\r\n",exit_code); /* Stop all other threads */ ALT_LOG_PRINT_BOOT("[alt_exit.c] Calling ALT_OS_STOP().\r\n"); ALT_OS_STOP(); 52014: 0001883a nop 52018: e0bfff17 ldw r2,-4(fp) 5201c: e0bffe15 stw r2,-8(fp) /* * Routine called on exit. */ static ALT_INLINE ALT_ALWAYS_INLINE void alt_sim_halt(int exit_code) { register int r2 asm ("r2") = exit_code; 52020: e0bffe17 ldw r2,-8(fp) __asm__ volatile ("\n0:\n\taddi %0,%0, -1\n\tbgt %0,zero,0b" : : "r" (ALT_CPU_FREQ/100) ); /* Delay for >30ms */ __asm__ volatile ("break 2" : : "r"(r2), "r"(r3) ALT_GMON_DATA ); #else /* !DEBUG_STUB */ if (r2) { 52024: 10000226 beq r2,zero,52030 <_exit+0x2c> ALT_SIM_FAIL(); 52028: 002af070 cmpltui zero,zero,43969 5202c: 00000106 br 52034 <_exit+0x30> } else { ALT_SIM_PASS(); 52030: 002af0b0 cmpltui zero,zero,43970 ALT_SIM_HALT(exit_code); /* spin forever, since there's no where to go back to */ ALT_LOG_PRINT_BOOT("[alt_exit.c] Spinning forever.\r\n"); while (1); 52034: 003fff06 br 52034 <__alt_data_end+0xfffe0034>