ad_libmad.s
来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· S 代码 · 共 722 行
S
722 行
.file 1 "ad_libmad.c".section .mdebug.abi32.previous.section .text.func_table,"ax",@progbits.align 2.align 5.globl func_table.ent func_table.type func_table, @functionfunc_table:.frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0.mask 0x00000000,0.fmask 0x00000000,0.set noreorder.set nomacrolui $2,%hi(mpcodecs_ad_libmad)j $31addiu $2,$2,%lo(mpcodecs_ad_libmad).set macro.set reorder.end func_table.section .rodata.str1.4,"aMS",@progbits,1.align 2$LC0:.ascii "libmad: %d bytes processed\012\000".section .text.read_frame,"ax",@progbits.align 2.align 5.ent read_frame.type read_frame, @functionread_frame:.frame $sp,48,$31 # vars= 0, regs= 7/0, args= 16, gp= 0.mask 0x803f0000,-8.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-48sw $21,36($sp)sw $20,32($sp)sw $17,20($sp)sw $31,40($sp)sw $19,28($sp)sw $18,24($sp)sw $16,16($sp)lw $19,160($4)move $17,$4addiu $20,$19,13324addiu $21,$19,13388$L4:lw $2,56($17)lw $5,52($17)lw $6,60($17)lw $4,4($17)subu $6,$6,$2jal demux_read_dataaddu $5,$2,$5blez $2,$L16lw $31,40($sp)lw $6,56($17)addu $6,$6,$2sw $6,56($17)$L6:lw $5,52($17)jal mad_stream_buffermove $4,$20move $5,$20jal mad_frame_decodemove $4,$21lw $3,13348($19)move $18,$2beq $3,$0,$L7move $5,$3lw $16,52($17)lw $2,56($17)move $4,$16addu $16,$16,$2subu $16,$16,$3jal memmovemove $6,$16lw $7,56($17)lui $6,%hi($LC0)addiu $6,$6,%lo($LC0)subu $7,$7,$16li $4,12 # 0xcjal mp_msgli $5,7 # 0x7sw $16,56($17)$L7:beq $18,$0,$L17li $2,1 # 0x1lw $3,13384($19)beq $3,$2,$L4nopj $L6lw $6,56($17)$L17: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 $31addiu $sp,$sp,48$L16:lw $21,36($sp)lw $20,32($sp)lw $19,28($sp)lw $18,24($sp)lw $17,20($sp)lw $16,16($sp)move $2,$0j $31addiu $sp,$sp,48.set macro.set reorder.end read_frame.section .text.init,"ax",@progbits.align 2.align 5.ent init.type init, @functioninit:.frame $sp,32,$31 # vars= 0, regs= 3/0, args= 16, gp= 0.mask 0x80030000,-8.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-32sw $17,20($sp)sw $31,24($sp)sw $16,16($sp)lw $16,160($4)jal read_framemove $17,$4sw $2,22656($16)li $5,2 # 0x2li $4,1 # 0x1beq $2,$0,$L21move $3,$0lw $2,13392($16)lw $3,13404($16)movn $4,$5,$2sw $4,36($17)lw $2,13408($16)srl $3,$3,3sw $3,44($17)sw $5,32($17)sw $2,28($17)li $3,1 # 0x1$L21:lw $31,24($sp)lw $17,20($sp)lw $16,16($sp)move $2,$3j $31addiu $sp,$sp,32.set macro.set reorder.end init.section .text.control,"ax",@progbits.align 2.align 5.ent control.type control, @functioncontrol:.frame $sp,24,$31 # vars= 0, regs= 2/0, args= 16, gp= 0.mask 0x80010000,-4.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-24sw $31,20($sp)sw $16,16($sp)sw $7,36($sp)li $2,1 # 0x1beq $5,$2,$L28lw $16,160($4)li $2,2 # 0x2beq $5,$2,$L29li $3,-1 # 0xfffffffffffffffflw $31,20($sp)lw $16,16($sp)move $2,$3j $31addiu $sp,$sp,24$L28:move $4,$16jal mad_synth_initsw $0,22656($16)jal mad_stream_initaddiu $4,$16,13324jal mad_frame_initaddiu $4,$16,13388li $3,1 # 0x1lw $31,20($sp)lw $16,16($sp)move $2,$3j $31addiu $sp,$sp,24$L29:jal read_framenopsw $2,22656($16)li $3,1 # 0x1lw $31,20($sp)lw $16,16($sp)move $2,$3j $31addiu $sp,$sp,24.set macro.set reorder.end control.section .text.uninit,"ax",@progbits.align 2.align 5.ent uninit.type uninit, @functionuninit:.frame $sp,32,$31 # vars= 0, regs= 3/0, args= 16, gp= 0.mask 0x80030000,-8.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-32sw $31,24($sp)sw $17,20($sp)sw $16,16($sp)lw $16,160($4)move $17,$4jal mad_frame_finishaddiu $4,$16,13388jal mad_stream_finishaddiu $4,$16,13324lw $4,160($17)lw $31,24($sp)lw $17,20($sp)lw $16,16($sp)j uc_freeaddiu $sp,$sp,32.set macro.set reorder.end uninit.section .text.preinit,"ax",@progbits.align 2.align 5.ent preinit.type preinit, @functionpreinit:.frame $sp,32,$31 # vars= 0, regs= 3/0, args= 16, gp= 0.mask 0x80030000,-8.fmask 0x00000000,0addiu $sp,$sp,-32sw $17,20($sp)move $17,$4sw $16,16($sp)sw $31,24($sp).set noreorder.set nomacrojal uc_mallocli $4,22672 # 0x5890.set macro.set reordermove $16,$2li $3,4 # 0x4andi $2,$2,0x3subu $3,$3,$2li $2,2 # 0x2addiu $6,$16,22672.set noreorder.set nomacrobeq $3,$2,$L37move $4,$16.set macro.set reorderli $2,3 # 0x3.set noreorder.set nomacrobeq $3,$2,$L38li $2,1 # 0x1.set macro.set reorderbeq $3,$2,$L57$L35:addiu $5,$4,-4move $2,$0#APP.word 0b01110000000000100000000001101111 #S32I2M XR1,$2#NO_APPandi $3,$4,0x1f.set noreorder.set nomacrobeq $3,$0,$L59addiu $2,$6,-31.set macro.set reorderli $2,-32 # 0xffffffffffffffe0and $2,$5,$2addiu $4,$2,32sltu $3,$5,$4.set noreorder.set nomacrobeq $3,$0,$L59addiu $2,$6,-31.set macro.set reorder$L51:#APP.word 0b01110000101000000000010001010101 #S32SDI XR1,$5,4#NO_APPsltu $2,$5,$4.set noreorder.set nomacrobne $2,$0,$L51addiu $2,$6,-31.set macro.set reorder$L59:li $3,-32 # 0xffffffffffffffe0and $3,$2,$3sltu $4,$5,$3.set noreorder.set nomacrobeq $4,$0,$L60addiu $2,$6,-4.set macro.set reorderaddiu $2,$5,4$L61:#APPpref 30,0($2).word 0b01110000101000000000010001010101 #S32SDI XR1,$5,4.word 0b01110000101000000000010001010101 #S32SDI XR1,$5,4.word 0b01110000101000000000010001010101 #S32SDI XR1,$5,4.word 0b01110000101000000000010001010101 #S32SDI XR1,$5,4.word 0b01110000101000000000010001010101 #S32SDI XR1,$5,4.word 0b01110000101000000000010001010101 #S32SDI XR1,$5,4.word 0b01110000101000000000010001010101 #S32SDI XR1,$5,4.word 0b01110000101000000000010001010101 #S32SDI XR1,$5,4#NO_APPsltu $2,$5,$3.set noreorder.set nomacrobne $2,$0,$L61addiu $2,$5,4.set macro.set reorderaddiu $2,$6,-4$L60:li $3,-4 # 0xfffffffffffffffcand $3,$2,$3sltu $4,$5,$3beq $4,$0,$L44$L53:#APP.word 0b01110000101000000000010001010101 #S32SDI XR1,$5,4#NO_APPsltu $2,$5,$3bne $2,$0,$L53$L44:andi $3,$6,0x3li $2,2 # 0x2.set noreorder.set nomacrobeq $3,$2,$L48addiu $4,$5,4.set macro.set reorderli $2,3 # 0x3.set noreorder.set nomacrobeq $3,$2,$L49li $2,1 # 0x1.set macro.set reorderbeq $3,$2,$L58$L46:sw $16,160($17).set noreorder.set nomacrojal mad_stream_initaddiu $4,$16,13324.set macro.set reorder.set noreorder.set nomacrojal mad_frame_initaddiu $4,$16,13388.set macro.set reorder.set noreorder.set nomacrojal mad_synth_initmove $4,$16.set macro.set reorderli $2,4096 # 0x1000li $3,9216 # 0x2400sw $2,48($17)sw $3,64($17)lw $31,24($sp)lw $17,20($sp)lw $16,16($sp)li $2,1 # 0x1.set noreorder.set nomacroj $31addiu $sp,$sp,32.set macro.set reorder$L48:sb $0,4($5).set noreorder.set nomacroj $L46sb $0,1($4).set macro.set reorder$L37:addiu $4,$16,2sb $0,0($16).set noreorder.set nomacroj $L35sb $0,1($16).set macro.set reorder$L49:sb $0,6($5)sb $0,4($5).set noreorder.set nomacroj $L46sb $0,5($5).set macro.set reorder$L38:addiu $4,$16,3sb $0,0($16)sb $0,1($16).set noreorder.set nomacroj $L35sb $0,2($16).set macro.set reorder$L58:.set noreorder.set nomacroj $L46sb $0,4($5).set macro.set reorder$L57:addiu $4,$16,1.set noreorder.set nomacroj $L35sb $0,0($16).set macro.set reorder.end preinit.section .text.decode_audio,"ax",@progbits.align 2.align 5.ent decode_audio.type decode_audio, @functiondecode_audio:.frame $sp,56,$31 # vars= 0, regs= 10/0, args= 16, gp= 0.mask 0xc0ff0000,-4.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-56sw $22,40($sp)sw $21,36($sp)sw $20,32($sp)sw $18,24($sp)sw $31,52($sp)sw $fp,48($sp)sw $23,44($sp)sw $19,28($sp)sw $17,20($sp)sw $16,16($sp)move $22,$4move $20,$6move $18,$5move $21,$7blez $6,$L63lw $16,160($4)slt $2,$7,4608bne $2,$0,$L63li $2,268369920 # 0xfff0000ori $19,$2,0xffffmove $17,$0li $23,-268435456 # 0xfffffffff0000000j $L66move $fp,$19$L67:move $4,$16$L83:sw $0,22656($16)jal mad_synth_frameaddiu $5,$16,13388addiu $3,$16,4100lhu $4,4($3)lhu $6,6($3)sll $2,$4,1mul $9,$6,$2li $2,2 # 0x2addu $17,$17,$9beq $4,$2,$L81addiu $8,$16,4108addiu $5,$18,2li $7,-1 # 0xffffffffffffffffli $11,-268435456 # 0xfffffffff0000000move $12,$19li $10,268435456 # 0x10000000$L73:addiu $6,$6,-1bne $6,$7,$L82slt $2,$17,$20$L84:beq $2,$0,$L69addiu $2,$17,4608slt $2,$21,$2bne $2,$0,$L69addu $18,$18,$9$L66:lw $2,22656($16)bne $2,$0,$L83move $4,$16jal read_framemove $4,$22bne $2,$0,$L67sw $2,22656($16)$L69:beq $17,$0,$L63move $2,$17lw $31,52($sp)lw $fp,48($sp)lw $23,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)j $31addiu $sp,$sp,56$L82:lw $2,0($8)addiu $8,$8,4addiu $2,$2,4096slt $3,$2,$11movn $2,$11,$3slt $4,$2,$10movz $2,$12,$4sra $2,$2,13sh $2,-2($5)j $L73addiu $5,$5,2$L63:li $17,-1 # 0xffffffffffffffffmove $2,$17lw $31,52($sp)lw $fp,48($sp)lw $23,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)j $31addiu $sp,$sp,56$L81:addiu $10,$18,4addiu $7,$16,8720$L72:addiu $6,$6,-1li $2,-1 # 0xffffffffffffffffbeq $6,$2,$L84slt $2,$17,$20lw $2,0($8)lw $3,-4($7)addiu $2,$2,4096addiu $3,$3,4096slt $4,$2,$23slt $5,$3,$23movn $3,$23,$5movn $2,$23,$4li $5,268435456 # 0x10000000slt $4,$2,$5slt $5,$3,$5movz $2,$fp,$4movz $3,$fp,$5sra $2,$2,13sra $3,$3,13sh $2,-4($10)sh $3,-2($10)addiu $8,$8,4addiu $7,$7,4j $L72addiu $10,$10,4.set macro.set reorder.end decode_audio.globl mpcodecs_ad_libmad.data.align 2.type mpcodecs_ad_libmad, @object.size mpcodecs_ad_libmad, 24mpcodecs_ad_libmad:.word info.word preinit.word init.word uninit.word control.word decode_audio.section .rodata.str1.4.align 2$LC1:.ascii "libmad mpeg audio decoder\000".align 2$LC2:.ascii "libmad\000".align 2$LC3:.ascii "A'rpi\000".align 2$LC4:.ascii "libmad...\000".align 2$LC5:.ascii "based on Xine's libmad/xine_decoder.c\000".data.align 2.type info, @object.size info, 20info:.word $LC1.word $LC2.word $LC3.word $LC4.word $LC5.ident "GCC: (GNU) 4.1.2"
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?