ad_liba52.s
来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· S 代码 · 共 1,531 行 · 第 1/2 页
S
1,531 行
.file 1 "ad_liba52.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_liba52)j $31addiu $2,$2,%lo(mpcodecs_ad_liba52).set macro.set reorder.end func_table.section .text.preinit,"ax",@progbits.align 2.align 5.ent preinit.type preinit, @functionpreinit:.frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0.mask 0x00000000,0.fmask 0x00000000,0.set noreorder.set nomacrolw $3,32($4)lui $2,%hi(audio_output_channels)lw $5,%lo(audio_output_channels)($2)slt $2,$3,2beq $2,$0,$L4nopli $3,2 # 0x2sw $3,32($4)$L4:sll $2,$3,11sll $3,$3,9subu $2,$2,$3mul $2,$5,$2li $3,3840 # 0xf00sw $3,48($4)sw $2,64($4)li $3,1 # 0x1lui $2,%hi(a52_level)sw $3,%lo(a52_level)($2)j $31li $2,1 # 0x1.set macro.set reorder.end preinit.section .text.a52_resample_float,"ax",@progbits.align 2.align 5.ent a52_resample_float.type a52_resample_float, @functiona52_resample_float:.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(channel_map)lw $10,%lo(channel_map)($2)move $7,$5move $8,$0li $9,15 # 0xfli $11,256 # 0x100$L9:j $L10move $6,$10$L11:lw $2,0($2)srl $6,$6,4sw $2,0($7)beq $6,$0,$L21addiu $7,$7,4$L10:andi $3,$6,0xfaddiu $2,$3,-1sll $2,$2,8addu $2,$2,$8sll $2,$2,2bne $3,$9,$L11addu $2,$2,$4move $2,$0srl $6,$6,4sw $2,0($7)bne $6,$0,$L10addiu $7,$7,4$L21:addiu $8,$8,1bne $8,$11,$L9nopsubu $2,$7,$5j $31sra $2,$2,1.set macro.set reorder.end a52_resample_float.section .text.uninit,"ax",@progbits.align 2.align 5.ent uninit.type uninit, @functionuninit:.frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0.mask 0x00000000,0.fmask 0x00000000,0.set noreorder.set nomacroj $31nop.set macro.set reorder.end uninit.globl __floatsidf.globl __extendsfdf2.globl __fixdfsi.section .text.dynrng_call,"ax",@progbits.align 2.align 5.globl dynrng_call.ent dynrng_call.type dynrng_call, @functiondynrng_call:.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)jal __floatsidfsw $16,16($sp)move $16,$2lui $2,%hi(a52_drc_level)lw $4,%lo(a52_drc_level)($2)jal __extendsfdf2move $17,$3move $6,$2move $4,$16move $5,$17jal powmove $7,$3move $4,$2jal __fixdfsimove $5,$3lw $31,24($sp)lw $17,20($sp)lw $16,16($sp)j $31addiu $sp,$sp,32.set macro.set reorder.end dynrng_call.section .rodata.str1.4,"aMS",@progbits,1.align 2$LC0:.ascii "a52: len=%d flags=0x%X %d Hz %d bit/s\012\000".align 2$LC1:.ascii "a52: CRC check failed! \012\000".section .text.a52_fillbuff,"ax",@progbits.align 2.align 5.globl a52_fillbuff.ent a52_fillbuff.type a52_fillbuff, @functiona52_fillbuff:.frame $sp,64,$31 # vars= 16, regs= 4/0, args= 32, gp= 0.mask 0x80070000,-4.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-64sw $16,48($sp)move $16,$4sw $31,60($sp)sw $18,56($sp)sw $17,52($sp)sw $0,32($sp)sw $0,36($sp)sw $0,40($sp)move $4,$0sw $0,56($16)$L56:slt $2,$4,8bne $2,$0,$L28nop$L57:lw $2,12($16)li $17,8192 # 0x2000beq $2,$17,$L36li $6,8 # 0x8lw $4,52($16)jal swabmove $5,$4$L36:lw $4,52($16)addiu $5,$sp,32addiu $6,$sp,36jal a52_syncinfoaddiu $7,$sp,40move $18,$2addiu $2,$2,-7sltu $2,$2,3834bne $2,$0,$L38lw $2,32($sp)lw $2,12($16)beq $2,$17,$L40li $6,8 # 0x8lw $4,52($16)jal swabmove $5,$4$L40:lw $4,52($16)li $6,7 # 0x7jal memmoveaddiu $5,$4,1lw $4,56($16)addiu $2,$4,-1move $4,$2sw $2,56($16)slt $2,$4,8beq $2,$0,$L57nop$L28:lw $4,4($16)lw $5,0($4)lw $2,4($4)slt $2,$5,$2bne $2,$0,$L58addiu $3,$5,1jal ds_fill_buffernopbeq $2,$0,$L32noplw $3,4($16)lw $4,0($3)lw $2,8($3)addiu $5,$4,1addu $2,$2,$4lbu $6,0($2)bltz $6,$L32sw $5,0($3)$L59:lw $3,56($16)lw $2,52($16)addiu $4,$3,1addu $2,$2,$3sb $6,0($2)j $L56sw $4,56($16)$L58:lw $2,8($4)addu $2,$2,$5lbu $6,0($2)bgez $6,$L59sw $3,0($4)$L32:li $18,-1 # 0xffffffffffffffffmove $2,$18$L60:lw $31,60($sp)lw $18,56($sp)lw $17,52($sp)lw $16,48($sp)j $31addiu $sp,$sp,64$L38:lw $3,36($sp)sw $2,16($sp)lui $6,%hi($LC0)lw $2,40($sp)addiu $6,$6,%lo($LC0)li $4,12 # 0xcli $5,7 # 0x7move $7,$18sw $3,20($sp)jal mp_msgsw $2,24($sp)lw $3,40($sp)lw $4,24($16)addiu $5,$3,7slt $2,$3,0movn $3,$5,$2xori $4,$4,0x1dli $2,2 # 0x2li $6,4 # 0x4movn $6,$2,$4lw $5,52($16)lw $2,36($sp)sra $3,$3,3addiu $17,$18,-8lw $4,4($16)sw $3,44($16)sw $6,32($16)sw $2,28($16)addiu $5,$5,8jal demux_read_datamove $6,$17lw $3,12($16)li $2,8192 # 0x2000beq $3,$2,$L46move $6,$17lw $4,52($16)addiu $4,$4,8jal swabmove $5,$4$L46:lw $4,52($16)addiu $5,$18,-2jal a52_crc16_blockaddiu $4,$4,2beq $2,$0,$L60move $2,$18lui $6,%hi($LC1)addiu $6,$6,%lo($LC1)li $4,12 # 0xcjal mp_msgli $5,5 # 0x5move $2,$18lw $31,60($sp)lw $18,56($sp)lw $17,52($sp)lw $16,48($sp)j $31addiu $sp,$sp,64.set macro.set reorder.end a52_fillbuff.section .rodata.str1.4.align 2$LC2:.ascii "a52: error decoding frame\012\000".align 2$LC3:.ascii "a52: error at resampling\012\000".align 2$LC4:.ascii "len <= maxlen\000".align 2$LC5:.ascii "ad_liba52.c\000".section .text.decode_audio,"ax",@progbits.align 2.align 5.ent decode_audio.type decode_audio, @functiondecode_audio:.frame $sp,64,$31 # vars= 8, regs= 7/0, args= 24, gp= 0.mask 0x803f0000,-8.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-64sw $21,52($sp)sw $20,48($sp)sw $17,36($sp)sw $16,32($sp)sw $31,56($sp)sw $19,44($sp)sw $18,40($sp)lui $2,%hi(a52_flags)lw $6,24($4)lw $3,%lo(a52_flags)($2)lui $2,%hi(a52_level)lw $8,%lo(a52_level)($2)lw $9,56($4)ori $3,$3,0x20xori $6,$6,0x1dli $2,384 # 0x180move $17,$0move $16,$4sw $8,24($sp)sw $3,28($sp)movn $17,$2,$6move $20,$5beq $9,$0,$L86move $21,$7lui $18,%hi(a52_state)$L93:lw $5,52($16)lw $4,%lo(a52_state)($18)sw $0,56($16)addiu $6,$sp,28addiu $7,$sp,24jal a52_framesw $17,16($sp)bne $2,$0,$L87lui $2,%hi(a52_drc_action)lw $3,%lo(a52_drc_action)($2)bne $3,$0,$L88lw $4,%lo(a52_state)($18)$L91:jal a52_blocklui $18,%hi(a52_state)bne $2,$0,$L89lw $4,%lo(a52_state)($18)lui $19,%hi(a52_resample)jal a52_sampleslw $16,%lo(a52_resample)($19)move $4,$2jal $16move $5,$20lw $4,%lo(a52_state)($18)jal a52_blocksll $17,$2,1bne $2,$0,$L77lw $4,%lo(a52_state)($18)jal a52_sampleslw $16,%lo(a52_resample)($19)move $4,$2jal $16addu $5,$17,$20lw $4,%lo(a52_state)($18)sll $2,$2,1jal a52_blockaddu $17,$17,$2bne $2,$0,$L77lw $4,%lo(a52_state)($18)jal a52_sampleslw $16,%lo(a52_resample)($19)move $4,$2jal $16addu $5,$17,$20lw $4,%lo(a52_state)($18)sll $2,$2,1jal a52_blockaddu $17,$17,$2bne $2,$0,$L77lw $4,%lo(a52_state)($18)jal a52_sampleslw $16,%lo(a52_resample)($19)move $4,$2jal $16addu $5,$17,$20lw $4,%lo(a52_state)($18)sll $2,$2,1jal a52_blockaddu $17,$17,$2bne $2,$0,$L77lw $4,%lo(a52_state)($18)jal a52_sampleslw $16,%lo(a52_resample)($19)move $4,$2jal $16addu $5,$17,$20lw $4,%lo(a52_state)($18)sll $2,$2,1jal a52_blockaddu $17,$17,$2bne $2,$0,$L77lw $4,%lo(a52_state)($18)jal a52_sampleslw $16,%lo(a52_resample)($19)move $4,$2jal $16addu $5,$17,$20sll $2,$2,1addu $17,$17,$2slt $2,$21,$17$L92:bne $2,$0,$L90lui $4,%hi($LC4)$L70:move $2,$17lw $31,56($sp)lw $21,52($sp)lw $20,48($sp)lw $19,44($sp)lw $18,40($sp)lw $17,36($sp)lw $16,32($sp)j $31addiu $sp,$sp,64$L88:move $5,$0jal a52_dynrngmove $6,$0j $L91lw $4,%lo(a52_state)($18)$L89:move $17,$0$L77:lui $6,%hi($LC3)addiu $6,$6,%lo($LC3)li $4,12 # 0xcjal mp_msgli $5,2 # 0x2j $L92slt $2,$21,$17$L86:jal a52_fillbuffnopbgez $2,$L93lui $18,%hi(a52_state)j $L70li $17,-1 # 0xffffffffffffffff$L87:lui $6,%hi($LC2)addiu $6,$6,%lo($LC2)li $4,12 # 0xcjal mp_msgli $5,2 # 0x2j $L70li $17,-1 # 0xffffffffffffffff$L90:lui $5,%hi($LC5)lui $7,%hi(__PRETTY_FUNCTION__.4683)addiu $4,$4,%lo($LC4)addiu $5,$5,%lo($LC5)addiu $7,$7,%lo(__PRETTY_FUNCTION__.4683)jal __assert_failli $6,328 # 0x148.set macro.set reorder.end decode_audio.globl __gtsf2.globl __muldf3.section .rodata.cst4,"aM",@progbits,4.align 2$LC6:.word 1114636288.section .rodata.cst8,"aM",@progbits,8.align 3$LC7:.word 0.word 1074266112.section .rodata.cst4.align 2$LC8:.word -1018691584.section .rodata.cst8.align 3$LC9:.word -1717986918.word 1068079513.align 3$LC10:.word 0.word 1076101120.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,-24li $2,3 # 0x3sw $31,20($sp)sw $16,16($sp)beq $5,$2,$L97sw $7,36($sp)slt $2,$5,4beq $2,$0,$L99li $2,4 # 0x4blez $5,$L95nopjal a52_fillbuffnopli $4,1 # 0x1$L100:lw $31,20($sp)lw $16,16($sp)move $2,$4j $31addiu $sp,$sp,24$L99:beq $5,$2,$L98lui $2,%hi($LC6)$L95:li $4,-1 # 0xfffffffffffffffflw $31,20($sp)lw $16,16($sp)move $2,$4j $31addiu $sp,$sp,24$L97:lw $4,0($6)li $2,9 # 0x9beq $4,$2,$L112xori $2,$4,0x1dsltu $4,$2,1lw $31,20($sp)lw $16,16($sp)move $2,$4j $31addiu $sp,$sp,24$L98:lw $16,0($6)lw $5,%lo($LC6)($2)jal __gtsf2move $4,$16blez $2,$L101lui $2,%hi($LC8)lui $2,%hi($LC7)lw $6,%lo($LC7)($2)lw $7,%lo($LC7+4)($2)$L104:lui $2,%hi($LC10)lw $4,%lo($LC10)($2)jal powlw $5,%lo($LC10+4)($2)move $5,$3jal __fixdfsimove $4,$2move $3,$2$L107:lui $2,%hi(a52_level)sw $3,%lo(a52_level)($2)li $4,1 # 0x1lw $31,20($sp)lw $16,16($sp)move $2,$4j $31addiu $sp,$sp,24$L112:j $L100li $4,1 # 0x1$L101:lw $5,%lo($LC8)($2)jal __gtsf2move $4,$16blez $2,$L107move $3,$0jal __extendsfdf2move $4,$16lui $4,%hi($LC9)lw $6,%lo($LC9)($4)lw $7,%lo($LC9+4)($4)move $5,$3jal __muldf3move $4,$2move $6,$2j $L104move $7,$3.set macro.set reorder.end control.section .rodata.str1.4.align 2$LC11:.ascii "A52 init failed\012\000".align 2$LC12:.ascii "A52 sync failed\012\000"
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?