demux_demuxers.mid
来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· MID 代码 · 共 451 行
MID
451 行
.file 1 "demux_demuxers.c" .section .mdebug.abi32 .previous .section .text.demux_demuxers_control,"ax",@progbits .align 2 .align 5 .ent demux_demuxers_control .type demux_demuxers_control, @functiondemux_demuxers_control: .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 $16,16($sp) sw $31,20($sp) li $2,10 # 0xa move $16,$6 beq $5,$2,$L3 lw $4,2248($4) li $2,11 # 0xb beq $5,$2,$L4 li $6,-1 # 0xffffffffffffffff lw $31,20($sp) lw $16,16($sp) move $2,$6 j $31 addiu $sp,$sp,24$L3: jal demuxer_get_time_length lw $4,0($4) sw $2,0($16) sw $3,4($16) li $6,1 # 0x1 lw $31,20($sp) lw $16,16($sp) move $2,$6 j $31 addiu $sp,$sp,24$L4: jal demuxer_get_percent_pos lw $4,0($4) sw $2,0($16) li $6,1 # 0x1 lw $31,20($sp) lw $16,16($sp) move $2,$6 j $31 addiu $sp,$sp,24 .set macro .set reorder .end demux_demuxers_control .globl __truncdfsf2 .globl __eqsf2 .globl __eqdf2 .globl __floatsisf .globl __divsf3 .globl __subsf3 .globl __extendsfdf2 .section .text.demux_demuxers_seek,"ax",@progbits .align 2 .align 5 .ent demux_demuxers_seek .type demux_demuxers_seek, @functiondemux_demuxers_seek: .frame $sp,48,$31 # vars= 0, regs= 7/0, args= 16, gp= 0 .mask 0x803f0000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-48 sw $31,40($sp) sw $21,36($sp) sw $19,28($sp) sw $18,24($sp) sw $16,16($sp) sw $20,32($sp) sw $17,20($sp) lw $17,2248($4) move $18,$4 lw $3,8($17) lw $2,4($17) lw $9,16($3) lw $8,16($2) lw $4,0($17) sw $0,56($8) sw $0,56($9) jal demux_seek move $21,$6 lw $16,56($18) lw $4,16($16) jal __truncdfsf2 lw $5,20($16) move $4,$2 move $5,$0 jal __eqsf2 move $19,$2 beq $2,$0,$L21 move $5,$16$L9: lw $2,4($17) lw $8,0($17) move $5,$19 move $6,$21 li $7,1 # 0x1 beq $2,$8,$L13 move $4,$2 lw $2,52($18) jal demux_seek lw $20,92($2) lw $18,52($18) move $6,$0 lw $4,16($18) lw $5,20($18) jal __eqdf2 move $7,$0 beq $2,$0,$L22 nop lw $8,0($17)$L13: lw $2,8($17) move $5,$19 move $6,$21 li $7,1 # 0x1 beq $2,$8,$L19 move $4,$2$L23: lw $31,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 demux_seek addiu $sp,$sp,48$L22: lw $2,4($18) lw $4,24($18) lw $5,0($18) lw $3,56($20) subu $4,$4,$2 addu $4,$4,$5 jal __floatsisf subu $4,$4,$3 lw $4,44($20) jal __floatsisf move $16,$2 move $5,$2 jal __divsf3 move $4,$16 move $5,$2 jal __subsf3 move $4,$19 jal __extendsfdf2 move $4,$2 sw $2,16($18) lw $8,0($17) lw $2,8($17) sw $3,20($18) move $5,$19 move $6,$21 li $7,1 # 0x1 bne $2,$8,$L23 move $4,$2$L19: lw $31,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$L21: jal demux_fill_buffer lw $4,0($17) lw $3,56($18) lw $2,56($3) beq $2,$0,$L9 nop lw $4,8($2) jal __truncdfsf2 lw $5,12($2) j $L9 move $19,$2 .set macro .set reorder .end demux_demuxers_seek .section .text.demux_close_demuxers,"ax",@progbits .align 2 .align 5 .ent demux_close_demuxers .type demux_close_demuxers, @functiondemux_close_demuxers: .frame $sp,32,$31 # vars= 0, regs= 3/0, args= 16, gp= 0 .mask 0x80030000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-32 sw $31,24($sp) sw $17,20($sp) sw $16,16($sp) lw $17,2248($4) lw $2,0($17) beq $2,$0,$L25 move $4,$2 jal free_demuxer nop$L25: lw $3,4($17) beq $3,$0,$L27 nop lw $2,0($17) beq $3,$2,$L27 move $4,$3 jal free_demuxer lw $16,16($3) jal free_stream move $4,$16$L27: lw $3,8($17) beq $3,$0,$L30 nop lw $2,0($17) beq $3,$2,$L30 nop lw $2,4($17) beq $3,$2,$L30 move $4,$3 jal free_demuxer lw $16,16($3) jal free_stream move $4,$16$L30: move $4,$17 lw $31,24($sp) lw $17,20($sp) lw $16,16($sp) j uc_free addiu $sp,$sp,32 .set macro .set reorder .end demux_close_demuxers .section .rodata.str1.4,"aMS",@progbits,1 .align 2$LC0: .ascii "fill_buffer error: bad demuxer: not vd, ad or sd.\012\000" .section .text.demux_demuxers_fill_buffer,"ax",@progbits .align 2 .align 5 .ent demux_demuxers_fill_buffer .type demux_demuxers_fill_buffer, @functiondemux_demuxers_fill_buffer: .frame $sp,24,$31 # vars= 0, regs= 1/0, args= 16, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-24 sw $31,16($sp) lw $6,2248($4) lw $3,72($5) lw $2,0($6) beq $3,$2,$L45 move $4,$3 lw $2,4($6) beq $3,$2,$L46 lw $31,16($sp) lw $2,8($6) lui $6,%hi($LC0) beq $3,$2,$L46 addiu $6,$6,%lo($LC0) li $4,7 # 0x7 jal mp_msg li $5,2 # 0x2 lw $31,16($sp) move $2,$0 j $31 addiu $sp,$sp,24$L45: lw $31,16($sp)$L46: j demux_fill_buffer addiu $sp,$sp,24 .set macro .set reorder .end demux_demuxers_fill_buffer .section .text.new_demuxers_demuxer,"ax",@progbits .align 2 .align 5 .globl new_demuxers_demuxer .ent new_demuxers_demuxer .type new_demuxers_demuxer, @functionnew_demuxers_demuxer: .frame $sp,40,$31 # vars= 0, regs= 5/0, args= 16, gp= 0 .mask 0x800f0000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-40 sw $19,28($sp) sw $17,20($sp) move $19,$5 move $17,$4 li $5,2256 # 0x8d0 li $4,1 # 0x1 sw $31,32($sp) sw $18,24($sp) sw $16,16($sp) jal uc_calloc move $18,$6 li $4,12 # 0xc jal uc_malloc move $16,$2 lw $4,16($17) lw $5,48($17) li $3,65536 # 0x10000 sw $2,2248($16) sw $3,40($16) sw $4,16($16) sw $17,0($2) sw $19,4($2) sw $18,8($2) beq $5,$0,$L48 sw $3,44($16) lw $2,48($19) beq $2,$0,$L48 nop lw $2,48($18) j $L51 sltu $2,$0,$2$L48: move $2,$0$L51: lw $4,56($17) lw $5,52($19) lw $6,60($18) lui $3,%hi(demuxer_desc_demuxers) addiu $3,$3,%lo(demuxer_desc_demuxers) sw $2,48($16) sw $3,0($16) sw $4,56($16) sw $5,52($16) sw $6,60($16) move $2,$16 lw $31,32($sp) lw $19,28($sp) lw $18,24($sp) lw $17,20($sp) lw $16,16($sp) j $31 addiu $sp,$sp,40 .set macro .set reorder .end new_demuxers_demuxer .globl demuxer_desc_demuxers .section .rodata.str1.4 .align 2$LC1: .ascii "Demuxers demuxer\000" .subsection -1 .align 2$LC2: .ascii "\000" .align 2$LC3: .ascii "?\000" .align 2$LC4: .ascii "internal use only\000" .data .align 2 .type demuxer_desc_demuxers, @object .size demuxer_desc_demuxers, 52demuxer_desc_demuxers: .word $LC1 .word $LC2 .word $LC2 .word $LC3 .word $LC4 .word 65536 .word 0 .word 0 .word demux_demuxers_fill_buffer .word 0 .word demux_close_demuxers .word demux_demuxers_seek .word demux_demuxers_control .ident "GCC: (GNU) 4.1.2"
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?