📄 ac3dec.mid
字号:
move $4,$21 move $5,$17 jal __addsf3 move $22,$2 j $L434 move $21,$2$L459: lw $3,2808($sp) li $2,65536 # 0x10000 addu $2,$3,$2 lw $4,-23388($2) lui $6,%hi($LC28) addiu $6,$6,%lo($LC28) move $5,$0 jal av_log sw $8,16($sp) j $L109 li $2,-1 # 0xffffffffffffffff$L458: lw $5,8($18) sra $2,$5,3 addu $2,$21,$2 lbu $3,0($2) andi $4,$5,0x7 sll $3,$3,$4 andi $3,$3,0x00ff lw $2,2808($sp) addiu $16,$5,1 srl $3,$3,7 sw $16,8($18) j $L105 sw $3,100($2)$L438: j $L119 move $5,$0$L350: j $L167 lw $16,8($18)$L474: j $L204 lw $20,520($8)$L343: lw $3,2808($sp) sll $2,$6,2 addu $2,$2,$3 lui $3,%hi($LC27) lw $11,%lo($LC27)($3) lw $16,8($18) lui $3,%hi(dynrng_tab) addiu $10,$3,%lo(dynrng_tab) addiu $7,$2,608 li $12,-1 # 0xffffffffffffffff$L89: sra $2,$16,3 addu $2,$21,$2 lbu $3,0($2) andi $4,$16,0x7 sll $3,$3,$4 andi $3,$3,0x00ff move $9,$16 addiu $16,$16,1 sra $2,$16,3 srl $3,$3,7 addu $2,$2,$21 andi $8,$16,0x7 beq $3,$0,$L94 sw $16,8($18) lbu $3,0($2) lbu $4,1($2) lbu $5,3($2) sll $3,$3,24 lbu $2,2($2) sll $4,$4,16 or $3,$3,$4 or $3,$3,$5 sll $2,$2,8 or $2,$2,$3 sll $2,$2,$8 srl $2,$2,24 sll $2,$2,2 addu $2,$2,$10 lw $3,0($2) addiu $16,$9,9 sw $3,0($7) sw $16,8($18)$L96: addiu $6,$6,-1 bne $6,$12,$L89 addiu $7,$7,-4 j $L466 sra $2,$16,3$L356: lw $2,2808($sp) j $L204 lw $20,520($2)$L94: j $L96 sw $11,0($7) .set macro .set reorder .end ac3_parse_audio_block .section .rodata.str1.4 .align 2$LC39: .ascii "frame sync error\012\000" .align 2$LC40: .ascii "invalid bitstream id\012\000" .align 2$LC41: .ascii "invalid sample rate\012\000" .align 2$LC42: .ascii "invalid frame size\012\000" .align 2$LC43: .ascii "invalid header\012\000" .align 2$LC44: .ascii "incomplete frame\012\000" .align 2$LC45: .ascii "Cannot upmix AC3 from %d to %d channels.\012\000" .align 2$LC46: .ascii "Cannot downmix AC3 from %d to %d channels.\012\000" .align 2$LC47: .ascii "error parsing the audio block\012\000" .section .rodata.cst8 .align 3$LC38: .word 1719614413 .word 1072079006 .section .text.ac3_decode_frame,"ax",@progbits .align 2 .align 5 .ent ac3_decode_frame .type ac3_decode_frame, @functionac3_decode_frame: .frame $sp,88,$31 # vars= 24, regs= 10/0, args= 24, gp= 0 .mask 0xc0ff0000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-88 sw $fp,80($sp) lw $fp,104($sp) sw $23,76($sp) sw $22,72($sp) sw $20,64($sp) sw $16,48($sp) sw $31,84($sp) sw $21,68($sp) sw $19,60($sp) sw $18,56($sp) sw $17,52($sp) lw $17,136($4) sll $3,$fp,3 move $20,$4 li $2,39632 # 0x9ad0 sra $4,$3,3 move $22,$5 move $23,$6 bltz $4,$L476 addu $16,$17,$2 bltz $3,$L476 nop addu $2,$7,$4$L479: sw $3,12($16) sw $7,0($16) move $4,$7 sw $2,4($16) sw $0,8($16) jal ff_ac3_parse_header addiu $5,$sp,24 bne $2,$0,$L480 move $3,$2 lbu $2,28($sp) lhu $4,38($sp) sw $2,1184($17) lbu $18,32($sp) sw $18,0($17) lbu $2,35($sp) lbu $6,33($sp) lbu $7,34($sp) sw $2,4($17) lbu $8,36($sp) lui $2,%hi(clevs) sw $8,528($17) lbu $3,37($sp) addiu $2,$2,%lo(clevs) sw $4,508($17) sw $3,1188($17) addu $6,$6,$2 lui $3,%hi(slevs) lw $2,40($sp) addiu $3,$3,%lo(slevs) addu $7,$7,$3 sw $2,512($17) lbu $4,0($6) lbu $5,0($7) lbu $6,44($sp) lui $3,%hi(gain_levels) addiu $3,$3,%lo(gain_levels) subu $9,$6,$8 sll $4,$4,2 sll $5,$5,2 lhu $7,46($sp) addu $5,$5,$3 addu $4,$4,$3 addiu $2,$9,1 sw $2,532($17) sw $7,516($17) sw $6,540($17) lw $12,0($4) lw $21,0($5) sw $6,520($17) sw $9,524($17) bne $8,$0,$L558 sw $18,536($17) lw $7,8($16) li $2,2 # 0x2 move $3,$7 addiu $7,$7,51 sw $7,8($16) lw $18,0($17) beq $18,$2,$L559 andi $2,$18,0x1$L572: beq $2,$0,$L568 andi $2,$18,0x4 li $2,1 # 0x1 beq $18,$2,$L569 addiu $7,$7,1 addiu $7,$3,53 sw $7,8($16) lw $18,0($17) andi $2,$18,0x4$L568: bne $2,$0,$L560 nop$L486: addiu $7,$7,1$L569: sw $7,8($16) lw $3,0($17) lw $8,0($16) sltu $10,$3,1 sll $2,$10,2 addu $2,$2,$17 addiu $9,$2,600 lui $11,%hi(dialnorm_tab) sra $4,$7,3$L570: addu $4,$4,$8 lbu $3,0($4) lbu $5,1($4) lbu $6,3($4) lbu $2,2($4) sll $5,$5,16 sll $3,$3,24 or $3,$3,$5 or $3,$3,$6 sll $2,$2,8 andi $4,$7,0x7 or $2,$2,$3 sll $2,$2,$4 srl $2,$2,27 addiu $3,$11,%lo(dialnorm_tab) sll $2,$2,2 addu $2,$2,$3 lw $4,0($2) move $5,$7 addiu $7,$7,5 sra $3,$7,3 sw $4,0($9) sw $7,8($16) addu $3,$8,$3 lbu $2,0($3) andi $4,$7,0x7 sll $2,$2,$4 andi $2,$2,0x00ff addiu $7,$5,6 srl $2,$2,7 addiu $10,$10,-1 addiu $9,$9,-4 beq $2,$0,$L492 sw $7,8($16) addiu $7,$5,14 sw $7,8($16)$L492: sra $2,$7,3 addu $2,$8,$2 lbu $3,0($2) andi $4,$7,0x7 sll $3,$3,$4 andi $3,$3,0x00ff move $2,$7 srl $3,$3,7 addiu $7,$7,1 beq $3,$0,$L494 sw $7,8($16) addiu $7,$2,9 sw $7,8($16)$L494: sra $2,$7,3 addu $2,$8,$2 lbu $3,0($2) andi $4,$7,0x7 sll $3,$3,$4 andi $3,$3,0x00ff move $2,$7 srl $3,$3,7 addiu $7,$7,1 beq $3,$0,$L496 sw $7,8($16) addiu $7,$2,8 sw $7,8($16)$L496: li $2,-1 # 0xffffffffffffffff bne $10,$2,$L570 sra $4,$7,3 move $5,$7 addiu $7,$7,2 sra $2,$7,3 sw $7,8($16) addu $2,$8,$2 lbu $3,0($2) andi $4,$7,0x7 sll $3,$3,$4 andi $3,$3,0x00ff addiu $7,$5,3 srl $3,$3,7 beq $3,$0,$L499 sw $7,8($16) addiu $7,$5,17 sw $7,8($16)$L499: sra $2,$7,3 addu $2,$8,$2 lbu $3,0($2) andi $4,$7,0x7 sll $3,$3,$4 andi $3,$3,0x00ff move $2,$7 srl $3,$3,7 addiu $7,$7,1 beq $3,$0,$L501 sw $7,8($16) addiu $7,$2,15 sw $7,8($16)$L501: sra $2,$7,3 addu $2,$8,$2 lbu $3,0($2) andi $4,$7,0x7 sll $3,$3,$4 andi $3,$3,0x00ff move $9,$7 srl $3,$3,7 addiu $7,$7,1 beq $3,$0,$L503 sw $7,8($16) sra $4,$7,3 addu $4,$4,$8 lbu $3,0($4) lbu $5,1($4) lbu $6,3($4) lbu $2,2($4) sll $3,$3,24 sll $5,$5,16 or $3,$3,$5 or $3,$3,$6 sll $2,$2,8 or $2,$2,$3 andi $4,$7,0x7 sll $2,$2,$4 srl $2,$2,26 sll $2,$2,3 addu $2,$9,$2 addiu $2,$2,15 sw $2,8($16)$L503: lw $9,524($17) blez $9,$L545 lui $2,%hi(ac3_default_coeffs) lw $18,0($17) sll $3,$18,3 sll $4,$18,1 addu $4,$4,$3 addiu $2,$2,%lo(ac3_default_coeffs) lui $3,%hi(gain_levels) addu $7,$4,$2 addiu $10,$3,%lo(gain_levels) move $6,$17 move $8,$0$L507: lbu $2,0($7) lbu $3,1($7) sll $2,$2,2 sll $3,$3,2 addu $2,$2,$10 addu $3,$3,$10 lw $4,0($2) lw $5,0($3) addiu $8,$8,1 slt $2,$8,$9 sw $4,544($6) sw $5,548($6) addiu $7,$7,2 bne $2,$0,$L507 addiu $6,$6,8$L505: slt $2,$18,2 bne $2,$0,$L508 andi $2,$18,0x1 beq $2,$0,$L571 addiu $19,$18,-4 sw $12,552($17) sw $12,556($17)$L508: addiu $19,$18,-4$L571: sltu $2,$19,2 bne $2,$0,$L561 nop$L511: addiu $2,$18,-6 sltu $2,$2,2 bne $2,$0,$L562 sll $2,$19,3$L513: lw $2,508($17) sw $2,64($20) lw $3,512($17) sw $3,4($20) lw $2,516($17) slt $2,$fp,$2 bne $2,$0,$L563 move $4,$20 lw $7,520($17) sw $7,540($17) lw $3,68($20) bne $3,$0,$L524 slt $2,$7,$3 move $3,$7 sw $7,68($20)$L526: li $2,2 # 0x2 beq $3,$2,$L556 li $2,1 # 0x1 beq $3,$2,$L556 nop lw $7,540($17) bne $3,$7,$L564 lui $6,%hi($LC46)$L530: sw $3,540($17) move $16,$22 move $18,$0$L534: move $4,$17 jal ac3_parse_audio_block move $5,$18 bne $2,$0,$L535 move $4,$0 lw $7,540($17) move $5,$0$L557: sll $2,$4,8 addu $2,$2,$5 sll $2,$2,1 slt $3,$4,$7 addu $2,$2,$17 bne $3,$0,$L538 addiu $4,$4,1 addiu $5,$5,1 slt $2,$5,256 bne $2,$0,$L557 move $4,$0 addiu $18,$18,1 li $2,6 # 0x6 bne $18,$2,$L534 nop lw $2,68($20) sll $3,$2,12 sll $2,$2,10 subu $3,$3,$2 sw $3,0($23) lw $2,516($17)$L521: lw $31,84($sp) lw $fp,80($sp) lw $23,76($sp) lw $22,72($sp) lw $21,68($sp) lw $20,64($sp) lw $19,60($sp) lw $18,56($sp) lw $17,52($sp) lw $16,48($sp) j $31 addiu $sp,$sp,88$L480: li $2,-3 # 0xfffffffffffffffd beq $3,$2,$L517 slt $2,$3,-2 bne $2,$0,$L565 li $2,-4 # 0xfffffffffffffffc li $2,-2 # 0xfffffffffffffffe beq $3,$2,$L518 lui $6,%hi($LC40) li $2,-1 # 0xffffffffffffffff bne $3,$2,$L515 lui $6,%hi($LC39) move $4,$20 addiu $6,$6,%lo($LC39) jal av_log move $5,$0 j $L521 li $2,-1 # 0xffffffffffffffff$L558: ori $2,$18,0x8 sw $2,536($17) lw $7,8($16) li $2,2 # 0x2 move $3,$7 addiu $7,$7,51 sw $7,8($16) lw $18,0($17) bne $18,$2,$L572 andi $2,$18,0x1 j $L567 addiu $7,$3,53$L538: lhu $2,26320($2) sh $2,0($16) j $L557 addiu $16,$16,2$L476: move $7,$0 move $3,$0 j $L479 move $2,$0$L524: beq $2,$0,$L526 move $4,$20 lui $6,%hi($LC45) addiu $6,$6,%lo($LC45) move $5,$0 jal av_log sw $3,16($sp) j $L521 li $2,-1 # 0xffffffffffffffff$L556: sw $3,536($17) j $L530 lw $3,68($20)$L565: beq $3,$2,$L566 lui $6,%hi($LC42)$L515: lui $6,%hi($LC43) move $4,$20 addiu $6,$6,%lo($LC43) jal av_log move $5,$0 lw $31,84($sp) lw $fp,80($sp) lw $23,76($sp) lw $22,72($sp) lw $21,68($sp) lw $20,64($sp) lw $19,60($sp) lw $18,56($sp) lw $17,52($sp) lw $16,48($sp) li $2,-1 # 0xffffffffffffffff j $31 addiu $sp,$sp,88$L560: addiu $7,$7,2 j $L486 sw $7,8($16)$L559: addiu $7,$3,53$L567: j $L486 sw $7,8($16)$L517: lui $6,%hi($LC41) move $4,$20 addiu $6,$6,%lo($LC41) jal av_log move $5,$0 lw $31,84($sp) lw $fp,80($sp) lw $23,76($sp) lw $22,72($sp) lw $21,68($sp) lw $20,64($sp) lw $19,60($sp) lw $18,56($sp) lw $17,52($sp) lw $16,48($sp) li $2,-1 # 0xffffffffffffffff j $31 addiu $sp,$sp,88$L535: lui $6,%hi($LC47) move $4,$20 addiu $6,$6,%lo($LC47) jal av_log move $5,$0 sw $0,0($23) lw $2,516($17) lw $31,84($sp) lw $fp,80($sp) lw $23,76($sp) lw $22,72($sp) lw $21,68($sp) lw $20,64($sp) lw $19,60($sp) lw $18,56($sp) lw $17,52($sp) lw $16,48($sp) j $31 addiu $sp,$sp,88$L562: addu $2,$2,$17 sw $21,544($2) j $L513 sw $21,556($2)$L561: jal __extendsfdf2 move $4,$21 lui $4,%hi($LC38) lw $6,%lo($LC38)($4) lw $7,%lo($LC38+4)($4) move $5,$3 jal __muldf3 move $4,$2 addiu $16,$18,-2 move $4,$2 move $5,$3 jal __truncdfsf2 sll $16,$16,3 addu $16,$16,$17 sw $2,544($16) j $L511 sw $2,548($16)$L566: move $4,$20 addiu $6,$6,%lo($LC42) jal av_log move $5,$0 j $L521 li $2,-1 # 0xffffffffffffffff$L545: j $L505 lw $18,0($17)$L518: move $4,$20 addiu $6,$6,%lo($LC40) jal av_log move $5,$0 j $L521 li $2,-1 # 0xffffffffffffffff$L563: lui $6,%hi($LC44) addiu $6,$6,%lo($LC44) jal av_log move $5,$0 j $L521 li $2,-1 # 0xffffffffffffffff$L564: move $4,$20 addiu $6,$6,%lo($LC46) move $5,$0 jal av_log sw $3,16($sp) j $L521 li $2,-1 # 0xffffffffffffffff .set macro .set reorder .end ac3_decode_frame .globl ac3_decoder .section .rodata.str1.4 .align 2$LC48: .ascii "ac3\000" .data .align 2 .type ac3_decoder, @object .size ac3_decoder, 52ac3_decoder: .word $LC48 .word 1 .word 86020 .word 42160 .word ac3_decode_init .space 4 .word ac3_decode_end .word ac3_decode_frame .space 20 .rdata .align 2 .type clevs, @object .size clevs, 4clevs: .byte 2 .byte 3 .byte 4 .byte 3 .align 2 .type gain_levels, @object .size gain_levels, 24gain_levels: .word 0 .word 1065353216 .word 1060439283 .word 1058551792 .word 1056964608 .word 1052050675 .align 2 .type slevs, @object .size slevs, 4slevs: .byte 2 .byte 4 .byte 0 .byte 4 .align 2 .type ac3_default_coeffs, @object .size ac3_default_coeffs, 80ac3_default_coeffs: .byte 1 .byte 0 .byte 0 .byte 1 .space 6 .byte 2 .byte 2 .space 8 .byte 1 .byte 0 .byte 0 .byte 1 .space 6 .byte 1 .byte 0 .byte 3 .byte 3 .byte 0 .byte 1 .space 4 .byte 1 .byte 0 .byte 0 .byte 1 .byte 4 .byte 4 .space 4 .byte 1 .byte 0 .byte 3 .byte 3 .byte 0 .byte 1 .byte 5 .byte 5 .space 2 .byte 1 .byte 0 .byte 0 .byte 1 .byte 4 .byte 0 .byte 0 .byte 4 .space 2 .byte 1 .byte 0 .byte 3 .byte 3 .byte 0 .byte 1 .byte 4 .byte 0 .byte 0 .byte 4 .align 2 .type qntztab, @object .size qntztab, 16qntztab: .byte 0 .byte 3 .byte 5 .byte 7 .byte 11 .byte 15 .byte 5 .byte 6 .byte 7 .byte 8 .byte 9 .byte 10 .byte 11 .byte 12 .byte 14 .byte 16 .align 2 .type rematrix_band_tab, @object .size rematrix_band_tab, 5rematrix_band_tab: .byte 13 .byte 25 .byte 37 .byte 61 .byte -3 .local scale_factors .comm scale_factors,100,4 .local exp_ungroup_tab .comm exp_ungroup_tab,384,4 .local b1_mantissas .comm b1_mantissas,384,4 .local b2_mantissas .comm b2_mantissas,1536,4 .local b3_mantissas .comm b3_mantissas,32,4 .local b4_mantissas .comm b4_mantissas,1024,4 .local b5_mantissas .comm b5_mantissas,64,4 .local dynrng_tab .comm dynrng_tab,1024,4 .local dialnorm_tab .comm dialnorm_tab,128,4 .ident "GCC: (GNU) 4.1.2"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -