.file "uart.c" .global __ashlhi3 .section .text.lm8_uart_getc,"ax",@progbits .global lm8_uart_getc .type lm8_uart_getc, @function lm8_uart_getc: # pretend_size = 0, callee_size = 4 # locals_size = 2, args_size = 0 # total_size = 6, reg_save_mask = 0xc00 addi r8,_lo(-6) addic r9,_hi(-6) movi r12,2 movi r13,0 add r12,r8 addc r13,r9 call __prologue_save_r11 movi r1,0 movi r2,1 call __ashlhi3 mov r13,r9 # R13 update sspi r0,r8 movi r2,1 movi r3,0 add r2,r8 addc r3,r9 mov r13,r3 # R13 update sspi r1,r2 movi r2,3 call __ashlhi3 mov r2,r8 mov r3,r9 mov r13,r3 # R13 update lspi r4,r2 addi r2,_lo(1) addic r3,_hi(1) mov r13,r3 # R13 update lspi r5,r2 add r4,r0 addc r5,r1 addi r4,_lo(uart_ctx) addic r5,_hi(uart_ctx) mov r2,r4 mov r3,r5 addi r2,_lo(15) addic r3,_hi(15) .L2: mov r13,r3 # R13 update lspi r0,r2 movi r1,0 cmp r0,r1 bz .L2 # eq mov r6,r4 mov r7,r5 addi r6,_lo(11) addic r7,_hi(11) mov r13,r7 # R13 update lspi r0,r6 mov r11,r1 mov r10,r0 add r4,r10 addc r5,r11 addi r4,_lo(3) addic r5,_hi(3) mov r13,r5 # R13 update lspi r4,r4 addi r0,_lo(1) mov r13,r7 # R13 update sspi r0,r6 cmpi r0,3 bc .L3 # | bz .L3 # |leu movi r0,0 mov r13,r7 # R13 update sspi r0,r6 .L3: mov r13,r3 # R13 update lspi r1,r2 addi r1,_lo(-1) mov r13,r3 # R13 update sspi r1,r2 mov r0,r4 movi r12,2 movi r13,0 add r12,r8 addc r13,r9 call __epilogue_restore_r11 addi r8,_lo(6) addic r9,_hi(6) ret .size lm8_uart_getc, .-lm8_uart_getc .section .text.lm8_uart_init,"ax",@progbits .global lm8_uart_init .type lm8_uart_init, @function lm8_uart_init: # pretend_size = 0, callee_size = 7 # locals_size = 5, args_size = 0 # total_size = 12, reg_save_mask = 0x4c00 addi r8,_lo(-12) addic r9,_hi(-12) movi r12,5 movi r13,0 add r12,r8 addc r13,r9 call __prologue_save_r14 mov r12,r1 mov r7,r2 mov r6,r3 movi r14,0 movi r1,0 movi r2,1 movi r3,2 movi r4,0 add r3,r8 addc r4,r9 mov r13,r4 # R13 update sspi r6,r3 mov r13,r9 # R13 update sspi r7,r8 movi r4,1 movi r5,0 add r4,r8 addc r5,r9 mov r13,r5 # R13 update sspi r12,r4 call __ashlhi3 movi r10,3 movi r11,0 add r10,r8 addc r11,r9 mov r13,r11 # R13 update sspi r0,r10 movi r2,4 movi r3,0 add r2,r8 addc r3,r9 mov r13,r3 # R13 update sspi r1,r2 movi r2,3 call __ashlhi3 movi r3,3 movi r4,0 add r3,r8 addc r4,r9 mov r10,r3 mov r11,r4 mov r13,r11 # R13 update lspi r3,r10 addi r10,_lo(1) addic r11,_hi(1) mov r13,r11 # R13 update lspi r4,r10 add r0,r3 addc r1,r4 addi r0,_lo(uart_ctx) addic r1,_hi(uart_ctx) movi r4,1 movi r5,0 add r4,r8 addc r5,r9 mov r13,r5 # R13 update lspi r12,r4 mov r13,r9 # R13 update lspi r7,r8 mov r13,r1 # R13 update sspi r12,r0 mov r2,r0 mov r3,r1 addi r2,_lo(1) addic r3,_hi(1) mov r13,r3 # R13 update sspi r7,r2 mov r2,r0 mov r3,r1 addi r2,_lo(2) addic r3,_hi(2) movi r10,2 movi r11,0 add r10,r8 addc r11,r9 mov r13,r11 # R13 update lspi r6,r10 mov r13,r3 # R13 update sspi r6,r2 mov r2,r0 mov r3,r1 addi r2,_lo(15) addic r3,_hi(15) mov r13,r3 # R13 update sspi r14,r2 mov r2,r0 mov r3,r1 addi r2,_lo(16) addic r3,_hi(16) mov r13,r3 # R13 update sspi r14,r2 mov r2,r0 mov r3,r1 addi r2,_lo(11) addic r3,_hi(11) mov r13,r3 # R13 update sspi r14,r2 mov r2,r0 mov r3,r1 addi r2,_lo(12) addic r3,_hi(12) mov r13,r3 # R13 update sspi r14,r2 mov r2,r0 mov r3,r1 addi r2,_lo(13) addic r3,_hi(13) mov r13,r3 # R13 update sspi r14,r2 mov r2,r0 mov r3,r1 addi r2,_lo(14) addic r3,_hi(14) mov r13,r3 # R13 update sspi r14,r2 addi r0,_lo(17) addic r1,_hi(17) mov r13,r1 # R13 update sspi r14,r0 mov r0,r12 mov r1,r7 addi r0,_lo(9) addic r1,_hi(9) movi r2,0 mov r13,r1 exporti r2,r0 mov r10,r12 mov r11,r7 mov r0,r12 mov r1,r7 addi r0,_lo(8) addic r1,_hi(8) movi r2,-83 mov r13,r1 exporti r2,r0 mov r0,r12 mov r1,r7 addi r0,_lo(3) addic r1,_hi(3) movi r2,3 mov r13,r1 exporti r2,r0 addi r10,_lo(1) addic r11,_hi(1) movi r0,13 mov r13,r11 exporti r0,r10 movi r12,5 movi r13,0 add r12,r8 addc r13,r9 call __epilogue_restore_r14 addi r8,_lo(12) addic r9,_hi(12) ret .size lm8_uart_init, .-lm8_uart_init .section .text.simple_putc,"ax",@progbits .global simple_putc .type simple_putc, @function simple_putc: # pretend_size = 0, callee_size = 4 # locals_size = 8, args_size = 0 # total_size = 12, reg_save_mask = 0xc00 addi r8,_lo(-12) addic r9,_hi(-12) movi r12,8 movi r13,0 add r12,r8 addc r13,r9 call __prologue_save_r11 movi r4,_hi(uart_ctx) mov r1,r8 mov r2,r9 addi r1,_lo(1) addic r2,_hi(1) mov r13,r2 # R13 update sspi r4,r1 movi r3,_lo(uart_ctx) mov r10,r8 mov r11,r9 mov r13,r11 # R13 update sspi r3,r10 mov r10,r1 mov r11,r2 mov r13,r11 # R13 update sspi r4,r10 mov r13,r4 # R13 update lspi r3,r3 movi r1,4 movi r2,0 add r1,r8 addc r2,r9 mov r13,r2 # R13 update sspi r3,r1 mov r4,r8 mov r5,r9 mov r13,r5 # R13 update lspi r1,r4 mov r4,r10 mov r5,r11 mov r13,r5 # R13 update lspi r2,r4 addi r1,_lo(1) addic r2,_hi(1) movi r4,6 movi r5,0 add r4,r8 addc r5,r9 mov r10,r4 mov r11,r5 mov r13,r11 # R13 update sspi r1,r10 addi r10,_lo(1) addic r11,_hi(1) mov r13,r11 # R13 update sspi r2,r10 mov r13,r2 # R13 update lspi r11,r1 movi r2,5 movi r3,0 add r2,r8 addc r3,r9 mov r13,r3 # R13 update sspi r11,r2 movi r1,4 movi r2,0 add r1,r8 addc r2,r9 mov r8,r1 mov r9,r2 mov r13,r9 # R13 update lspi r4,r8 addi r8,_lo(1) addic r9,_hi(1) mov r13,r9 # R13 update lspi r5,r8 subi r8,_lo(5) subic r9,_hi(5) mov r13,r5 exporti r0,r4 .L10: mov r13,r9 # R13 update lspi r10,r8 addi r8,_lo(1) addic r9,_hi(1) mov r13,r9 # R13 update lspi r11,r8 subi r8,_lo(1) subic r9,_hi(1) mov r13,r11 # R13 update lspi r6,r10 mov r0,r10 mov r1,r11 addi r0,_lo(1) addic r1,_hi(1) mov r13,r1 # R13 update lspi r7,r0 addi r6,_lo(5) addic r7,_hi(5) mov r13,r7 importi r5,r6 movi r3,2 movi r4,0 add r3,r8 addc r4,r9 mov r13,r4 # R13 update sspi r5,r3 movi r0,0 movi r10,3 movi r11,0 add r10,r8 addc r11,r9 mov r13,r11 # R13 update sspi r0,r10 mov r10,r3 mov r11,r4 mov r0,r5 addi r10,_lo(1) addic r11,_hi(1) mov r13,r11 # R13 update lspi r1,r10 andi r0,_lo(96) andi r1,_hi(96) movi r2,96 movi r3,0 call __ucmphi2 bnz .L10 # ne movi r12,8 movi r13,0 add r12,r8 addc r13,r9 call __epilogue_restore_r11 addi r8,_lo(12) addic r9,_hi(12) ret .size simple_putc, .-simple_putc .section .text.lm8_uart_isr,"ax",@progbits .global lm8_uart_isr .type lm8_uart_isr, @function lm8_uart_isr: # pretend_size = 0, callee_size = 4 # locals_size = 10, args_size = 0 # total_size = 14, reg_save_mask = 0xc00 addi r8,_lo(-14) addic r9,_hi(-14) movi r12,10 movi r13,0 add r12,r8 addc r13,r9 call __prologue_save_r11 movi r1,0 movi r2,1 call __ashlhi3 mov r13,r9 # R13 update sspi r0,r8 movi r2,1 movi r3,0 add r2,r8 addc r3,r9 mov r13,r3 # R13 update sspi r1,r2 movi r2,3 call __ashlhi3 mov r6,r8 mov r7,r9 mov r13,r7 # R13 update lspi r4,r6 addi r6,_lo(1) addic r7,_hi(1) mov r13,r7 # R13 update lspi r5,r6 add r4,r0 addc r5,r1 addi r4,_lo(uart_ctx) addic r5,_hi(uart_ctx) mov r13,r5 # R13 update lspi r7,r4 mov r10,r7 mov r1,r4 mov r2,r5 addi r1,_lo(1) addic r2,_hi(1) mov r13,r2 # R13 update lspi r0,r1 mov r11,r0 mov r1,r7 mov r2,r0 addi r1,_lo(2) addic r2,_hi(2) mov r13,r2 importi r0,r1 movi r1,2 cmp r0,r1 bz .L16 # eq bc .+3 # | bnz .L19 # |gtu cmpi r0,0 bnz .L23 # ne mov r1,r7 mov r2,r11 addi r1,_lo(6) addic r2,_hi(6) mov r13,r2 importi r1,r1 .L23: movi r12,10 movi r13,0 add r12,r8 addc r13,r9 call __epilogue_restore_r11 addi r8,_lo(14) addic r9,_hi(14) ret .L19: cmpi r0,4 bz .L17 # eq cmpi r0,6 bnz .L23 # ne mov r1,r7 mov r2,r11 addi r1,_lo(5) addic r2,_hi(5) mov r13,r2 importi r1,r1 movi r2,6 movi r3,0 add r2,r8 addc r3,r9 movi r0,0 movi r10,7 movi r11,0 add r10,r8 addc r11,r9 mov r13,r11 # R13 update sspi r0,r10 mov r13,r3 # R13 update sspi r1,r2 mov r6,r2 mov r7,r3 mov r13,r7 # R13 update lspi r0,r6 testi r0,14 bz .L23 # eq .L24: addi r4,_lo(17) addic r5,_hi(17) mov r13,r5 # R13 update lspi r0,r4 addi r0,_lo(1) mov r13,r5 # R13 update sspi r0,r4 movi r12,10 movi r13,0 add r12,r8 addc r13,r9 call __epilogue_restore_r11 addi r8,_lo(14) addic r9,_hi(14) ret .L17: mov r2,r4 mov r3,r5 addi r2,_lo(12) addic r3,_hi(12) movi r0,0 movi r6,2 movi r7,0 add r6,r8 addc r7,r9 mov r13,r7 # R13 update sspi r0,r6 movi r6,3 movi r7,0 add r6,r8 addc r7,r9 mov r13,r7 # R13 update sspi r0,r6 mov r13,r3 # R13 update lspi r0,r2 movi r6,2 movi r7,0 add r6,r8 addc r7,r9 mov r13,r7 # R13 update sspi r0,r6 mov r13,r11 importi r12,r10 movi r6,2 movi r7,0 add r6,r8 addc r7,r9 mov r10,r6 mov r11,r7 mov r13,r11 # R13 update lspi r0,r10 addi r10,_lo(1) addic r11,_hi(1) mov r13,r11 # R13 update lspi r1,r10 add r0,r4 addc r1,r5 addi r0,_lo(3) addic r1,_hi(3) mov r13,r1 # R13 update sspi r12,r0 mov r13,r3 # R13 update lspi r0,r2 addi r0,_lo(1) mov r13,r3 # R13 update sspi r0,r2 cmpi r0,3 bc .L21 # | bz .L21 # |leu movi r0,3 movi r1,0 add r0,r8 addc r1,r9 mov r13,r1 # R13 update lspi r1,r0 mov r13,r3 # R13 update sspi r1,r2 .L21: mov r2,r4 mov r3,r5 addi r2,_lo(15) addic r3,_hi(15) mov r13,r3 # R13 update lspi r0,r2 cmpi r0,4 bz .L24 # eq mov r13,r3 # R13 update lspi r0,r2 addi r0,_lo(1) mov r13,r3 # R13 update sspi r0,r2 movi r12,10 movi r13,0 add r12,r8 addc r13,r9 call __epilogue_restore_r11 addi r8,_lo(14) addic r9,_hi(14) ret .L16: mov r6,r4 mov r7,r5 addi r6,_lo(13) addic r7,_hi(13) movi r0,2 movi r1,0 add r0,r8 addc r1,r9 mov r2,r0 mov r3,r1 mov r13,r3 # R13 update sspi r6,r2 addi r2,_lo(1) addic r3,_hi(1) mov r13,r3 # R13 update sspi r7,r2 movi r2,0 movi r0,4 movi r1,0 add r0,r8 addc r1,r9 mov r13,r1 # R13 update sspi r2,r0 movi r0,0 movi r6,5 movi r7,0 add r6,r8 addc r7,r9 mov r13,r7 # R13 update sspi r0,r6 movi r2,2 movi r3,0 add r2,r8 addc r3,r9 mov r6,r2 mov r7,r3 mov r13,r7 # R13 update lspi r0,r6 addi r6,_lo(1) addic r7,_hi(1) mov r13,r7 # R13 update lspi r1,r6 mov r13,r1 # R13 update lspi r3,r0 movi r1,4 movi r2,0 add r1,r8 addc r2,r9 mov r13,r2 # R13 update sspi r3,r1 movi r0,4 movi r1,0 add r0,r8 addc r1,r9 mov r2,r0 mov r3,r1 mov r13,r3 # R13 update lspi r6,r2 addi r2,_lo(1) addic r3,_hi(1) mov r13,r3 # R13 update lspi r7,r2 add r6,r4 addc r7,r5 mov r0,r8 mov r1,r9 addi r0,_lo(1) addic r1,_hi(1) mov r13,r1 # R13 update sspi r7,r0 addi r6,_lo(7) addic r7,_hi(7) mov r1,r8 mov r2,r9 addi r1,_lo(1) addic r2,_hi(1) mov r13,r2 # R13 update sspi r7,r1 mov r13,r7 # R13 update lspi r0,r6 mov r13,r11 exporti r0,r10 movi r6,2 movi r7,0 add r6,r8 addc r7,r9 mov r10,r6 mov r11,r7 mov r13,r11 # R13 update lspi r6,r10 addi r10,_lo(1) addic r11,_hi(1) mov r13,r11 # R13 update lspi r7,r10 mov r13,r7 # R13 update lspi r0,r6 addi r0,_lo(1) mov r13,r7 # R13 update sspi r0,r6 cmpi r0,3 bc .L20 # | bz .L20 # |leu movi r2,5 movi r3,0 add r2,r8 addc r3,r9 mov r13,r3 # R13 update lspi r0,r2 mov r13,r7 # R13 update sspi r0,r6 .L20: mov r0,r4 mov r1,r5 addi r0,_lo(16) addic r1,_hi(16) mov r13,r1 # R13 update lspi r2,r0 addi r2,_lo(-1) mov r13,r1 # R13 update sspi r2,r0 mov r13,r1 # R13 update lspi r0,r0 cmpi r0,0 bnz .L23 # ne mov r13,r5 # R13 update lspi r3,r4 movi r1,8 movi r2,0 add r1,r8 addc r2,r9 mov r13,r2 # R13 update sspi r3,r1 addi r4,_lo(1) addic r5,_hi(1) mov r13,r5 # R13 update lspi r10,r4 movi r6,9 movi r7,0 add r6,r8 addc r7,r9 mov r13,r7 # R13 update sspi r10,r6 mov r3,r1 mov r4,r2 mov r13,r4 # R13 update lspi r6,r3 addi r3,_lo(1) addic r4,_hi(1) mov r13,r4 # R13 update lspi r7,r3 addi r6,_lo(1) addic r7,_hi(1) mov r4,r1 mov r5,r2 addi r4,_lo(1) addic r5,_hi(1) mov r13,r5 # R13 update sspi r7,r4 mov r13,r7 importi r0,r6 andi r0,_lo(-3) mov r13,r7 exporti r0,r6 b .L23 .size lm8_uart_isr, .-lm8_uart_isr .section .text.lm8_uart_putc,"ax",@progbits .global lm8_uart_putc .type lm8_uart_putc, @function lm8_uart_putc: # pretend_size = 0, callee_size = 7 # locals_size = 6, args_size = 0 # total_size = 13, reg_save_mask = 0x4c00 addi r8,_lo(-13) addic r9,_hi(-13) movi r12,6 movi r13,0 add r12,r8 addc r13,r9 call __prologue_save_r14 mov r14,r1 movi r1,0 movi r2,1 call __ashlhi3 mov r10,r0 mov r11,r1 movi r2,3 call __ashlhi3 mov r2,r10 mov r3,r11 add r2,r0 addc r3,r1 addi r2,_lo(uart_ctx) addic r3,_hi(uart_ctx) mov r4,r2 mov r5,r3 addi r4,_lo(16) addic r5,_hi(16) .L26: mov r13,r5 # R13 update lspi r0,r4 cmpi r0,4 bz .L26 # eq mov r0,r2 mov r1,r3 addi r0,_lo(14) addic r1,_hi(14) movi r6,4 movi r7,0 add r6,r8 addc r7,r9 mov r10,r6 mov r11,r7 mov r13,r11 # R13 update sspi r0,r10 addi r10,_lo(1) addic r11,_hi(1) mov r13,r11 # R13 update sspi r1,r10 movi r10,0 movi r6,2 movi r7,0 add r6,r8 addc r7,r9 mov r13,r7 # R13 update sspi r10,r6 movi r6,0 movi r0,3 movi r1,0 add r0,r8 addc r1,r9 mov r13,r1 # R13 update sspi r6,r0 movi r10,4 movi r11,0 add r10,r8 addc r11,r9 mov r0,r10 mov r1,r11 mov r13,r1 # R13 update lspi r6,r0 addi r0,_lo(1) addic r1,_hi(1) mov r13,r1 # R13 update lspi r7,r0 mov r13,r7 # R13 update lspi r7,r6 movi r10,2 movi r11,0 add r10,r8 addc r11,r9 mov r13,r11 # R13 update sspi r7,r10 movi r0,2 movi r1,0 add r0,r8 addc r1,r9 mov r6,r0 mov r7,r1 mov r13,r7 # R13 update lspi r10,r6 addi r6,_lo(1) addic r7,_hi(1) mov r13,r7 # R13 update lspi r11,r6 add r10,r2 addc r11,r3 movi r0,2 movi r1,0 add r0,r8 addc r1,r9 mov r6,r0 mov r7,r1 mov r13,r7 # R13 update sspi r10,r6 addi r6,_lo(1) addic r7,_hi(1) mov r13,r7 # R13 update sspi r11,r6 addi r10,_lo(7) addic r11,_hi(7) mov r6,r0 mov r7,r1 mov r13,r7 # R13 update sspi r10,r6 mov r13,r11 # R13 update sspi r14,r10 movi r10,4 movi r11,0 add r10,r8 addc r11,r9 mov r6,r10 mov r7,r11 mov r13,r7 # R13 update lspi r10,r6 addi r6,_lo(1) addic r7,_hi(1) mov r13,r7 # R13 update lspi r11,r6 mov r13,r11 # R13 update lspi r0,r10 addi r0,_lo(1) movi r6,4 movi r7,0 add r6,r8 addc r7,r9 mov r10,r6 mov r11,r7 mov r13,r11 # R13 update lspi r6,r10 addi r10,_lo(1) addic r11,_hi(1) mov r13,r11 # R13 update lspi r7,r10 mov r13,r7 # R13 update sspi r0,r6 cmpi r0,3 bc .L27 # | bz .L27 # |leu movi r0,0 movi r6,4 movi r7,0 add r6,r8 addc r7,r9 mov r10,r6 mov r11,r7 mov r13,r11 # R13 update lspi r6,r10 addi r10,_lo(1) addic r11,_hi(1) mov r13,r11 # R13 update lspi r7,r10 mov r13,r7 # R13 update sspi r0,r6 .L27: #APP # 172 "mico8/uart.c" 1 clri # 0 "" 2 #NO_APP mov r13,r5 # R13 update lspi r0,r4 addi r0,_lo(1) mov r13,r5 # R13 update sspi r0,r4 mov r13,r3 # R13 update lspi r7,r2 mov r13,r9 # R13 update sspi r7,r8 addi r2,_lo(1) addic r3,_hi(1) mov r13,r3 # R13 update lspi r12,r2 movi r10,1 movi r11,0 add r10,r8 addc r11,r9 mov r13,r11 # R13 update sspi r12,r10 mov r3,r7 mov r4,r12 addi r3,_lo(1) addic r4,_hi(1) mov r1,r10 mov r2,r11 mov r13,r2 # R13 update sspi r4,r1 mov r13,r4 importi r0,r3 ori r0,_lo(2) mov r13,r4 exporti r0,r3 #APP # 179 "mico8/uart.c" 1 seti # 0 "" 2 #NO_APP movi r12,6 movi r13,0 add r12,r8 addc r13,r9 call __epilogue_restore_r14 addi r8,_lo(13) addic r9,_hi(13) ret .size lm8_uart_putc, .-lm8_uart_putc .section .bss.uart_ctx,"aw",@nobits .type uart_ctx, @object .size uart_ctx, 18 uart_ctx: .zero 18 .ident "GCC: (GNU) 4.4.3"