bitwise.mid
来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· MID 代码 · 共 1,773 行 · 第 1/2 页
MID
1,773 行
jal uc_realloc addiu $5,$3,256 lw $3,16($16) lw $4,0($16) addiu $3,$3,256 addu $4,$2,$4 sw $3,16($16) sw $4,12($16) j $L111 sw $2,8($16)$L124: lw $4,0($16) lw $5,12($16) addiu $3,$7,7 sra $3,$3,3 addu $5,$5,$3 addu $4,$4,$3 andi $2,$7,0x7 sw $2,4($16) sw $4,0($16) sw $5,12($16) lw $31,28($sp) lw $18,24($sp) lw $17,20($sp) lw $16,16($sp) j $31 addiu $sp,$sp,32$L123: subu $2,$2,$3 lw $3,12($16) sll $2,$8,$2 j $L113 sb $2,4($3) .set macro .set reorder .end oggpackB_write .section .text.oggpackB_writealign,"ax",@progbits .align 2 .align 5 .globl oggpackB_writealign .ent oggpackB_writealign .type oggpackB_writealign, @functionoggpackB_writealign: .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro lw $3,4($4) li $2,8 # 0x8 subu $2,$2,$3 move $6,$2 slt $2,$2,8 bne $2,$0,$L129 move $5,$0 j $31 nop$L129: j oggpackB_write nop .set macro .set reorder .end oggpackB_writealign .section .text.oggpack_write,"ax",@progbits .align 2 .align 5 .globl oggpack_write .ent oggpack_write .type oggpack_write, @functionoggpack_write: .frame $sp,32,$31 # vars= 0, regs= 4/0, args= 16, gp= 0 .mask 0x80070000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-32 sw $18,24($sp) sw $17,20($sp) sw $16,16($sp) sw $31,28($sp) lw $2,0($4) lw $3,16($4) addiu $2,$2,4 slt $2,$2,$3 move $16,$4 move $18,$5 beq $2,$0,$L144 move $17,$6$L133: lui $2,%hi(mask) addiu $2,$2,%lo(mask) sll $3,$17,2 addu $3,$3,$2 lw $4,0($3) lw $6,12($16) lw $2,4($16) lbu $5,0($6) and $8,$18,$4 addu $7,$17,$2 sll $2,$8,$2 or $2,$2,$5 slt $3,$7,8 bne $3,$0,$L135 sb $2,0($6) lw $3,4($16) li $2,8 # 0x8 subu $2,$2,$3 lw $4,12($16) srl $2,$8,$2 slt $3,$7,16 bne $3,$0,$L135 sb $2,1($4) lw $3,4($16) li $2,16 # 0x10 subu $2,$2,$3 lw $4,12($16) srl $2,$8,$2 slt $3,$7,24 bne $3,$0,$L135 sb $2,2($4) lw $3,4($16) li $2,24 # 0x18 subu $2,$2,$3 lw $4,12($16) srl $2,$8,$2 slt $3,$7,32 bne $3,$0,$L135 sb $2,3($4) lw $2,4($16) bne $2,$0,$L145 subu $2,$0,$2 lw $2,12($16) sb $0,4($2)$L135: bltz $7,$L146 move $3,$7 lw $4,0($16) lw $5,12($16) sra $3,$3,3 addu $5,$5,$3 addu $4,$4,$3 andi $2,$7,0x7 sw $2,4($16) sw $4,0($16) sw $5,12($16) lw $31,28($sp) lw $18,24($sp) lw $17,20($sp) lw $16,16($sp) j $31 addiu $sp,$sp,32$L144: lw $4,8($4) jal uc_realloc addiu $5,$3,256 lw $3,16($16) lw $4,0($16) addiu $3,$3,256 addu $4,$2,$4 sw $3,16($16) sw $4,12($16) j $L133 sw $2,8($16)$L146: lw $4,0($16) lw $5,12($16) addiu $3,$7,7 sra $3,$3,3 addu $5,$5,$3 addu $4,$4,$3 andi $2,$7,0x7 sw $2,4($16) sw $4,0($16) sw $5,12($16) lw $31,28($sp) lw $18,24($sp) lw $17,20($sp) lw $16,16($sp) j $31 addiu $sp,$sp,32$L145: lw $3,12($16) srl $2,$8,$2 j $L135 sb $2,4($3) .set macro .set reorder .end oggpack_write .section .text.oggpack_writealign,"ax",@progbits .align 2 .align 5 .globl oggpack_writealign .ent oggpack_writealign .type oggpack_writealign, @functionoggpack_writealign: .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro lw $3,4($4) li $2,8 # 0x8 subu $2,$2,$3 move $6,$2 slt $2,$2,8 bne $2,$0,$L151 move $5,$0 j $31 nop$L151: j oggpack_write nop .set macro .set reorder .end oggpack_writealign .section .text.oggpack_writecopy_helper,"ax",@progbits .align 2 .align 5 .ent oggpack_writecopy_helper .type oggpack_writecopy_helper, @functionoggpack_writecopy_helper: .frame $sp,48,$31 # vars= 0, regs= 8/0, args= 16, gp= 0 .mask 0x807f0000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-48 sw $22,40($sp) sw $20,32($sp) sw $19,28($sp) sw $17,20($sp) sw $31,44($sp) sw $21,36($sp) sw $18,24($sp) sw $16,16($sp) move $17,$4 move $19,$5 move $20,$7 lw $22,64($sp) bltz $6,$L170 move $2,$6$L155: sra $18,$2,3 lw $3,4($17) sll $2,$18,3 beq $3,$0,$L156 subu $21,$6,$2 blez $18,$L158 nop move $16,$0 addu $2,$19,$16$L174: lbu $5,0($2) addiu $16,$16,1 move $4,$17 jal $20 li $6,8 # 0x8 bne $18,$16,$L174 addu $2,$19,$16$L158: beq $21,$0,$L175 lw $31,44($sp)$L172: beq $22,$0,$L165 addu $2,$19,$18 lbu $3,0($2) li $5,8 # 0x8 subu $5,$5,$21 move $4,$17 move $6,$21 move $25,$20 lw $31,44($sp) lw $22,40($sp) lw $21,36($sp) lw $20,32($sp) lw $19,28($sp) lw $18,24($sp) lw $17,20($sp) lw $16,16($sp) sra $5,$3,$5 jr $25 addiu $sp,$sp,48$L156: lw $2,0($17) lw $4,16($17) addu $5,$18,$2 addiu $3,$5,1 slt $3,$3,$4 beq $3,$0,$L171 addiu $5,$5,256 lw $4,12($17) move $5,$19 jal memmove move $6,$18 lw $3,12($17) lw $2,0($17) addu $3,$3,$18 addu $2,$2,$18 sw $2,0($17) sw $3,12($17) sb $0,0($3)$L173: bne $21,$0,$L172 lw $31,44($sp)$L175: lw $22,40($sp) lw $21,36($sp) lw $20,32($sp) lw $19,28($sp) lw $18,24($sp) lw $17,20($sp) lw $16,16($sp) j $31 addiu $sp,$sp,48$L165: lbu $5,0($2) move $4,$17 move $6,$21 move $25,$20 lw $31,44($sp) lw $22,40($sp) lw $21,36($sp) lw $20,32($sp) lw $19,28($sp) lw $18,24($sp) lw $17,20($sp) lw $16,16($sp) jr $25 addiu $sp,$sp,48$L170: j $L155 addiu $2,$6,7$L171: lw $4,8($17) jal uc_realloc sw $5,16($17) lw $3,0($17) sw $2,8($17) addu $2,$2,$3 sw $2,12($17) lw $4,12($17) move $5,$19 jal memmove move $6,$18 lw $3,12($17) lw $2,0($17) addu $3,$3,$18 addu $2,$2,$18 sw $2,0($17) sw $3,12($17) j $L173 sb $0,0($3) .set macro .set reorder .end oggpack_writecopy_helper .section .text.oggpackB_writecopy,"ax",@progbits .align 2 .align 5 .globl oggpackB_writecopy .ent oggpackB_writecopy .type oggpackB_writecopy, @functionoggpackB_writecopy: .frame $sp,32,$31 # vars= 0, regs= 1/0, args= 24, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro lui $7,%hi(oggpackB_write) addiu $sp,$sp,-32 li $2,1 # 0x1 addiu $7,$7,%lo(oggpackB_write) sw $31,24($sp) jal oggpack_writecopy_helper sw $2,16($sp) lw $31,24($sp) j $31 addiu $sp,$sp,32 .set macro .set reorder .end oggpackB_writecopy .section .text.oggpack_writecopy,"ax",@progbits .align 2 .align 5 .globl oggpack_writecopy .ent oggpack_writecopy .type oggpack_writecopy, @functionoggpack_writecopy: .frame $sp,32,$31 # vars= 0, regs= 1/0, args= 24, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro lui $7,%hi(oggpack_write) addiu $sp,$sp,-32 addiu $7,$7,%lo(oggpack_write) sw $31,24($sp) jal oggpack_writecopy_helper sw $0,16($sp) lw $31,24($sp) j $31 addiu $sp,$sp,32 .set macro .set reorder .end oggpack_writecopy .section .text.oggpackB_get_buffer,"ax",@progbits .align 2 .align 5 .globl oggpackB_get_buffer .ent oggpackB_get_buffer .type oggpackB_get_buffer, @functionoggpackB_get_buffer: .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro j $31 lw $2,8($4) .set macro .set reorder .end oggpackB_get_buffer .section .text.oggpackB_bits,"ax",@progbits .align 2 .align 5 .globl oggpackB_bits .ent oggpackB_bits .type oggpackB_bits, @functionoggpackB_bits: .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro lw $2,0($4) lw $3,4($4) sll $2,$2,3 j $31 addu $2,$2,$3 .set macro .set reorder .end oggpackB_bits .section .text.oggpackB_reset,"ax",@progbits .align 2 .align 5 .globl oggpackB_reset .ent oggpackB_reset .type oggpackB_reset, @functionoggpackB_reset: .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro lw $2,8($4) sw $2,12($4) sb $0,0($2) sw $0,4($4) j $31 sw $0,0($4) .set macro .set reorder .end oggpackB_reset .section .text.oggpackB_adv1,"ax",@progbits .align 2 .align 5 .globl oggpackB_adv1 .ent oggpackB_adv1 .type oggpackB_adv1, @functionoggpackB_adv1: .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro lw $2,4($4) addiu $2,$2,1 slt $3,$2,8 bne $3,$0,$L190 sw $2,4($4) lw $3,12($4) lw $2,0($4) addiu $3,$3,1 addiu $2,$2,1 sw $2,0($4) sw $3,12($4) sw $0,4($4)$L190: j $31 nop .set macro .set reorder .end oggpackB_adv1 .section .text.oggpackB_bytes,"ax",@progbits .align 2 .align 5 .globl oggpackB_bytes .ent oggpackB_bytes .type oggpackB_bytes, @functionoggpackB_bytes: .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro lw $3,4($4) lw $5,0($4) addiu $2,$3,7 slt $4,$2,0 addiu $3,$3,14 movn $2,$3,$4 sra $2,$2,3 j $31 addu $2,$2,$5 .set macro .set reorder .end oggpackB_bytes .section .text.oggpackB_adv,"ax",@progbits .align 2 .align 5 .globl oggpackB_adv .ent oggpackB_adv .type oggpackB_adv, @functionoggpackB_adv: .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro lw $2,4($4) move $6,$4 addu $5,$5,$2 andi $7,$5,0x7 bltz $5,$L197 move $3,$5 lw $2,12($6) lw $4,0($6) sra $3,$3,3 addu $4,$4,$3 addu $2,$2,$3 sw $7,4($6) sw $2,12($6) j $31 sw $4,0($6)$L197: lw $2,12($6) lw $4,0($6) addiu $3,$5,7 sra $3,$3,3 addu $4,$4,$3 addu $2,$2,$3 sw $7,4($6) sw $2,12($6) j $31 sw $4,0($6) .set macro .set reorder .end oggpackB_adv .section .text.oggpackB_writeinit,"ax",@progbits .align 2 .align 5 .globl oggpackB_writeinit .ent oggpackB_writeinit .type oggpackB_writeinit, @functionoggpackB_writeinit: .frame $sp,24,$31 # vars= 0, regs= 2/0, args= 16, gp= 0 .mask 0x80010000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-24 move $5,$0 li $6,20 # 0x14 sw $31,20($sp) sw $16,16($sp) jal memset move $16,$4 jal uc_malloc li $4,256 # 0x100 sw $2,8($16) sw $2,12($16) sb $0,0($2) li $2,256 # 0x100 sw $2,16($16) lw $31,20($sp) lw $16,16($sp) j $31 addiu $sp,$sp,24 .set macro .set reorder .end oggpackB_writeinit .section .text.oggpack_readinit,"ax",@progbits .align 2 .align 5 .globl oggpack_readinit .ent oggpack_readinit .type oggpack_readinit, @functionoggpack_readinit: .frame $sp,32,$31 # vars= 0, regs= 4/0, args= 16, gp= 0 .mask 0x80070000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-32 sw $18,24($sp) sw $17,20($sp) move $18,$5 sw $16,16($sp) move $17,$6 move $16,$4 move $5,$0 sw $31,28($sp) jal memset li $6,20 # 0x14 sw $17,16($16) sw $18,8($16) sw $18,12($16) lw $31,28($sp) lw $18,24($sp) lw $17,20($sp) lw $16,16($sp) j $31 addiu $sp,$sp,32 .set macro .set reorder .end oggpack_readinit .section .text.oggpack_writeclear,"ax",@progbits .align 2 .align 5 .globl oggpack_writeclear .ent oggpack_writeclear .type oggpack_writeclear, @functionoggpack_writeclear: .frame $sp,24,$31 # vars= 0, regs= 2/0, args= 16, gp= 0 .mask 0x80010000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-24 sw $31,20($sp) sw $16,16($sp) move $16,$4 jal uc_free lw $4,8($4) move $4,$16 lw $31,20($sp) lw $16,16($sp) move $5,$0 li $6,20 # 0x14 j memset addiu $sp,$sp,24 .set macro .set reorder .end oggpack_writeclear .section .text.oggpack_writeinit,"ax",@progbits .align 2 .align 5 .globl oggpack_writeinit .ent oggpack_writeinit .type oggpack_writeinit, @functionoggpack_writeinit: .frame $sp,24,$31 # vars= 0, regs= 2/0, args= 16, gp= 0 .mask 0x80010000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-24 move $5,$0 li $6,20 # 0x14 sw $31,20($sp) sw $16,16($sp) jal memset move $16,$4 jal uc_malloc li $4,256 # 0x100 sw $2,8($16) sw $2,12($16) sb $0,0($2) li $2,256 # 0x100 sw $2,16($16) lw $31,20($sp) lw $16,16($sp) j $31 addiu $sp,$sp,24 .set macro .set reorder .end oggpack_writeinit .section .text.oggpackB_readinit,"ax",@progbits .align 2 .align 5 .globl oggpackB_readinit .ent oggpackB_readinit .type oggpackB_readinit, @functionoggpackB_readinit: .frame $sp,32,$31 # vars= 0, regs= 4/0, args= 16, gp= 0 .mask 0x80070000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-32 sw $18,24($sp) sw $17,20($sp) move $18,$5 sw $16,16($sp) move $17,$6 move $16,$4 move $5,$0 sw $31,28($sp) jal memset li $6,20 # 0x14 sw $17,16($16) sw $18,8($16) sw $18,12($16) lw $31,28($sp) lw $18,24($sp) lw $17,20($sp) lw $16,16($sp) j $31 addiu $sp,$sp,32 .set macro .set reorder .end oggpackB_readinit .section .text.oggpackB_writeclear,"ax",@progbits .align 2 .align 5 .globl oggpackB_writeclear .ent oggpackB_writeclear .type oggpackB_writeclear, @functionoggpackB_writeclear: .frame $sp,24,$31 # vars= 0, regs= 2/0, args= 16, gp= 0 .mask 0x80010000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-24 sw $31,20($sp) sw $16,16($sp) move $16,$4 jal uc_free lw $4,8($4) move $4,$16 lw $31,20($sp) lw $16,16($sp) move $5,$0 li $6,20 # 0x14 j memset addiu $sp,$sp,24 .set macro .set reorder .end oggpackB_writeclear .rdata .align 2 .type mask, @object .size mask, 132mask: .word 0 .word 1 .word 3 .word 7 .word 15 .word 31 .word 63 .word 127 .word 255 .word 511 .word 1023 .word 2047 .word 4095 .word 8191 .word 16383 .word 32767 .word 65535 .word 131071 .word 262143 .word 524287 .word 1048575 .word 2097151 .word 4194303 .word 8388607 .word 16777215 .word 33554431 .word 67108863 .word 134217727 .word 268435455 .word 536870911 .word 1073741823 .word 2147483647 .word -1 .align 2 .type mask8B, @object .size mask8B, 36mask8B: .word 0 .word 128 .word 192 .word 224 .word 240 .word 248 .word 252 .word 254 .word 255 .ident "GCC: (GNU) 4.1.2"
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?