📄 dv.mid
字号:
.file 1 "dv.c" .section .mdebug.abi32 .previous .section .text.dv_decode_ac,"ax",@progbits .align 2 .align 5 .ent dv_decode_ac .type dv_decode_ac, @functiondv_decode_ac: .frame $sp,16,$31 # vars= 0, regs= 3/0, args= 0, gp= 0 .mask 0x00070000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-16 sw $18,8($sp) sw $17,4($sp) sw $16,0($sp) lw $11,8($4) move $17,$4 lw $4,0($4) sra $3,$11,3 addu $3,$3,$4 lbu $2,0($3) lbu $4,1($3) lbu $8,3($3) sll $4,$4,16 lbu $7,2($3) sll $2,$2,24 or $2,$2,$4 move $15,$5 or $2,$2,$8 sll $7,$7,8 lbu $5,14($5) or $7,$7,$2 andi $3,$11,0x7 move $18,$6 sll $4,$7,$3 lw $13,12($17) lw $25,4($15) lw $16,0($15) lw $24,8($15) blez $5,$L2 lbu $6,12($15) lhu $2,16($15) subu $3,$0,$5 sll $2,$2,$3 srl $4,$4,$5 or $4,$4,$2 subu $11,$11,$5 sb $0,14($15)$L2: lui $2,%hi(dv_rl_vlc) move $10,$6 j $L4 addiu $14,$2,%lo(dv_rl_vlc)$L5: addu $8,$6,$11 addu $2,$3,$14 slt $3,$13,$8 sra $9,$8,3 andi $12,$8,0x7 lbu $6,3($2) bne $3,$0,$L13 lh $7,0($2)$L7: addu $10,$10,$6 sll $2,$10,2 addu $6,$2,$24 slt $2,$10,64 addu $3,$25,$10 beq $2,$0,$L9 move $11,$8 lbu $4,0($3) lw $6,0($6) addu $3,$16,$4 lbu $2,0($3) sll $4,$4,1 sll $2,$7,$2 mul $2,$2,$6 lw $5,0($17) addiu $2,$2,8192 addu $4,$4,$18 sra $2,$2,14 addu $5,$9,$5 sh $2,0($4) lbu $3,0($5) lbu $4,1($5) sll $3,$3,24 sll $4,$4,16 lbu $6,3($5) lbu $2,2($5) or $3,$3,$4 or $3,$3,$6 sll $2,$2,8 or $2,$2,$3 sll $4,$2,$12$L4: srl $2,$4,23 sll $3,$2,2 addu $8,$3,$14 lb $6,2($8) sll $2,$4,9 bgez $6,$L5 srl $9,$2,$6 lh $3,0($8) li $2,9 # 0x9 subu $6,$2,$6 addu $2,$9,$3 addu $8,$6,$11 sll $3,$2,2 addu $2,$3,$14 slt $3,$13,$8 sra $9,$8,3 andi $12,$8,0x7 lbu $6,3($2) beq $3,$0,$L7 lh $7,0($2)$L13: subu $3,$13,$11 andi $3,$3,0x00ff subu $2,$0,$3 srl $2,$4,$2 move $8,$13 sh $2,16($15) sb $3,14($15)$L9: sw $8,8($17) sb $10,12($15) lw $18,8($sp) lw $17,4($sp) lw $16,0($sp) j $31 addiu $sp,$sp,16 .set macro .set reorder .end dv_decode_ac .section .text.dvvideo_close,"ax",@progbits .align 2 .align 5 .ent dvvideo_close .type dvvideo_close, @functiondvvideo_close: .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 $5,136($4) lw $2,8($5) beq $2,$0,$L15 addiu $5,$5,8 lw $2,264($4) jal $2 nop$L15: lw $31,16($sp) move $2,$0 j $31 addiu $sp,$sp,24 .set macro .set reorder .end dvvideo_close .section .rodata.str1.4,"aMS",@progbits,1 .align 2$LC0: .ascii "get_buffer() failed\012\000" .section .text.dvvideo_decode_frame,"ax",@progbits .align 2 .align 5 .ent dvvideo_decode_frame .type dvvideo_decode_frame, @functiondvvideo_decode_frame: .frame $sp,56,$31 # vars= 0, regs= 8/0, args= 24, gp= 0 .mask 0x807f0000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-56 sw $22,48($sp) sw $21,44($sp) sw $20,40($sp) sw $18,32($sp) sw $31,52($sp) sw $19,36($sp) sw $17,28($sp) sw $16,24($sp) lb $2,3($7) move $20,$7 move $18,$4 move $22,$5 move $21,$6 bltz $2,$L19 lw $16,136($4) lbu $2,451($7) andi $2,$2,0x4 bne $2,$0,$L43 li $2,96 # 0x60 lui $2,%hi(dv_profiles)$L48: addiu $3,$2,%lo(dv_profiles)$L24: lw $2,4($3) sw $3,0($16) lw $3,72($sp) slt $2,$3,$2 bne $2,$0,$L47 li $2,-1 # 0xffffffffffffffff$L45: lw $2,8($16) beq $2,$0,$L39 move $4,$18 addiu $19,$16,8 lw $2,264($18) jal $2 move $5,$19$L33: lw $2,0($16) li $17,1 # 0x1 sw $0,88($16) sw $17,56($16) sw $17,60($16) lw $3,56($2) lw $5,32($2) lw $6,28($2) move $4,$18 jal avcodec_set_dimensions sw $3,52($18) lw $2,260($18) move $4,$18 jal $2 move $5,$19 bltz $2,$L44 lui $6,%hi(dv_anchor) lw $3,0($16) sw $17,172($16) sw $0,176($16) lw $2,12($3) lw $5,8($3) sll $4,$2,2 sll $3,$2,5 subu $3,$3,$4 subu $3,$3,$2 mul $3,$3,$5 lw $2,624($18) lui $5,%hi(dv_decode_mt) sw $20,212($16) addiu $6,$6,%lo(dv_anchor) sw $3,16($sp) move $7,$0 move $4,$18 jal $2 addiu $5,$5,%lo(dv_decode_mt) li $3,200 # 0xc8 sw $3,0($21) move $6,$19 move $7,$22 addiu $8,$16,200$L37: lw $2,0($6) lw $3,4($6) lw $4,8($6) lw $5,12($6) addiu $6,$6,16 sw $2,0($7) sw $3,4($7) sw $4,8($7) sw $5,12($7) bne $6,$8,$L37 addiu $7,$7,16 lw $2,4($6) lw $3,0($6) sw $2,4($7) sw $3,0($7) lw $2,0($16) lw $31,52($sp) lw $2,4($2) lw $22,48($sp) lw $21,44($sp) lw $20,40($sp) lw $19,36($sp) lw $18,32($sp) lw $17,28($sp) lw $16,24($sp) j $31 addiu $sp,$sp,56$L43: lbu $3,448($7) bne $3,$2,$L48 lui $2,%hi(dv_profiles) lui $2,%hi(dv_profiles+300) addiu $3,$2,%lo(dv_profiles+300) lw $2,4($3) sw $3,0($16) lw $3,72($sp) slt $2,$3,$2 beq $2,$0,$L45 li $2,-1 # 0xffffffffffffffff$L47: lw $31,52($sp) lw $22,48($sp) lw $21,44($sp) lw $20,40($sp) lw $19,36($sp) lw $18,32($sp) lw $17,28($sp) lw $16,24($sp) j $31 addiu $sp,$sp,56$L39: j $L33 addiu $19,$16,8$L19: lbu $2,451($7) andi $2,$2,0x4 bne $2,$0,$L46 li $2,96 # 0x60$L25: lbu $2,5($20) andi $2,$2,0x7 bne $2,$0,$L28 lui $2,%hi(dv_profiles+200) lui $2,%hi(dv_profiles+100) j $L24 addiu $3,$2,%lo(dv_profiles+100)$L46: lbu $3,448($7) bne $3,$2,$L25 lui $2,%hi(dv_profiles+400) j $L24 addiu $3,$2,%lo(dv_profiles+400)$L28: j $L24 addiu $3,$2,%lo(dv_profiles+200)$L44: lui $6,%hi($LC0) move $4,$18 addiu $6,$6,%lo($LC0) jal av_log move $5,$0 j $L47 li $2,-1 # 0xffffffffffffffff .set macro .set reorder .end dvvideo_decode_frame .section .text.dvvideo_init,"ax",@progbits .align 2 .align 5 .ent dvvideo_init .type dvvideo_init, @functiondvvideo_init: .frame $sp,8128,$31 # vars= 8040, regs= 8/0, args= 56, gp= 0 .mask 0x807f0000,-4 .fmask 0x00000000,0 addiu $sp,$sp,-8128 sw $18,8104($sp) sw $31,8124($sp) sw $22,8120($sp) sw $21,8116($sp) sw $20,8112($sp) sw $19,8108($sp) sw $17,8100($sp) sw $16,8096($sp) lui $3,%hi(done.7593) lw $2,%lo(done.7593)($3) move $18,$4 .set noreorder .set nomacro bne $2,$0,$L93 lw $16,136($4) .set macro .set reorder li $2,1 # 0x1 sw $2,%lo(done.7593)($3) lui $3,%hi(dv_anchor) addiu $3,$3,%lo(dv_anchor) move $2,$0 li $4,648 # 0x288$L52: sw $2,0($3) addiu $2,$2,1 .set noreorder .set nomacro bne $2,$4,$L52 addiu $3,$3,4 .set macro .set reorder lui $20,%hi(dv_vlc_bits) lui $22,%hi(dv_vlc_len) lui $21,%hi(dv_vlc_run) lui $19,%hi(dv_vlc_level) addiu $17,$sp,56 lui $2,%hi(dv_vlc_bits+818) addiu $25,$2,%lo(dv_vlc_bits+818) move $6,$0 addiu $11,$20,%lo(dv_vlc_bits) addiu $24,$22,%lo(dv_vlc_len) addiu $15,$21,%lo(dv_vlc_run) addiu $14,$19,%lo(dv_vlc_level) move $8,$17$L54: lhu $5,0($11) lbu $4,0($24) lbu $2,0($14) lbu $10,0($15) addu $7,$17,$6 sll $9,$5,1 addiu $3,$4,1 addiu $11,$11,2 addiu $24,$24,1 addiu $15,$15,1 addiu $14,$14,1 andi $3,$3,0x00ff ori $12,$9,0x1 subu $13,$0,$2 sh $5,1652($8) sh $2,3288($8) sb $4,16($7) .set noreorder .set nomacro beq $2,$0,$L55 sb $10,834($7) .set macro .set reorder addiu $6,$6,1 sh $9,1652($8) addu $2,$17,$6 addiu $8,$8,2 sb $3,16($7) sb $10,834($2) sh $12,1652($8) sh $13,3288($8) sb $3,16($2)$L55: addiu $6,$6,1 .set noreorder .set nomacro bne $11,$25,$L54 addiu $8,$8,2 .set macro .set reorder li $2,1 # 0x1 li $8,2 # 0x2 addiu $3,$sp,1708 move $4,$17 li $5,9 # 0x9 addiu $7,$sp,72 sw $2,20($sp) sw $3,24($sp) sw $8,32($sp) sw $2,16($sp) sw $8,28($sp) sw $0,36($sp) sw $0,40($sp) sw $0,44($sp) .set noreorder .set nomacro jal init_vlc_sparse sw $0,48($sp) .set macro .set reorder lw $9,64($sp) .set noreorder .set nomacro blez $9,$L58 lui $2,%hi(dv_rl_vlc+2) .set macro .set reorder lw $5,60($sp) addiu $6,$2,%lo(dv_rl_vlc+2) move $8,$0$L60: lh $7,2($5) move $4,$0 .set noreorder .set nomacro bltz $7,$L63 lh $3,0($5) .set macro .set reorder addu $2,$17,$3 lbu $4,834($2) sll $3,$3,1 addu $3,$3,$17 addiu $4,$4,1 lh $3,3288($3) andi $4,$4,0x00ff$L63: addiu $8,$8,1 sb $7,0($6) sh $3,-2($6) sb $4,1($6) addiu $5,$5,4 .set noreorder .set nomacro bne $8,$9,$L60 addiu $6,$6,4 .set macro .set reorder$L58: .set noreorder .set nomacro jal free_vlc move $4,$17 .set macro .set reorder lui $12,%hi(dv_vlc_map) lui $2,%hi(dv_vlc_run+408) addiu $5,$21,%lo(dv_vlc_run) addiu $7,$19,%lo(dv_vlc_level) addiu $9,$20,%lo(dv_vlc_bits) addiu $8,$22,%lo(dv_vlc_len) addiu $10,$2,%lo(dv_vlc_run+408) addiu $11,$12,%lo(dv_vlc_map)$L64: lbu $2,0($5) sll $3,$2,9 sltu $2,$2,64 .set noreorder .set nomacro beq $2,$0,$L65 addiu $5,$5,1 .set macro .set reorder lbu $2,0($7) addu $3,$3,$2 sll $3,$3,3 addu $4,$3,$11 lbu $3,4($4) .set noreorder .set nomacro bne $3,$0,$L65 sltu $6,$0,$2 .set macro .set reorder lhu $3,0($9) lbu $2,0($8) sll $3,$3,$6 addu $2,$6,$2 sb $2,4($4) sw $3,0($4)$L65: addiu $7,$7,1 addiu $9,$9,2 .set noreorder .set nomacro bne $5,$10,$L64 addiu $8,$8,1 .set macro .set reorder move $10,$0 lui $13,%hi(dv_vlc_map+8) sll $2,$10,12$L117: addiu $3,$12,%lo(dv_vlc_map) addu $2,$2,$3 addiu $6,$2,12 li $7,65535 # 0xffff addiu $8,$13,%lo(dv_vlc_map+8) sll $11,$10,9$L69: andi $2,$7,0x1ff addu $2,$11,$2 addiu $4,$12,%lo(dv_vlc_map) sll $2,$2,3 addiu $3,$10,-1 addu $9,$2,$4 lbu $2,0($6) sll $3,$3,12 addu $5,$3,$4 .set noreorder .set nomacro bne $2,$0,$L70 addiu $7,$7,-1 .set macro .set reorder lbu $4,4($8) lw $2,0($5) lw $3,0($8) lbu $5,4($5) sll $2,$2,$4 or $3,$3,$2 addu $4,$4,$5 sw $3,-4($6) sb $4,0($6)$L70: lw $2,-4($6) lbu $3,0($6) ori $2,$2,0x1 sw $2,0($9) li $2,65280 # 0xff00 addiu $8,$8,8 addiu $6,$6,8 .set noreorder .set nomacro bne $7,$2,$L69 sb $3,4($9) .set macro .set reorder addiu $10,$10,1 li $2,64 # 0x40 .set noreorder .set nomacro bne $10,$2,$L117 sll $2,$10,12 .set macro .set reorder$L50: addiu $4,$sp,4980 .set noreorder .set nomacro jal dsputil_init move $5,$18 .set macro .set reorder lw $2,4980($sp) lw $3,7860($sp) sw $2,5976($16) lw $2,7872($sp) sw $3,5980($16) sw $2,5988($16) lui $3,%hi(ff_zigzag_direct) lui $2,%hi(ff_zigzag_direct+64) addiu $5,$3,%lo(ff_zigzag_direct) addiu $6,$2,%lo(ff_zigzag_direct+64) move $4,$16$L74: lbu $2,0($5) addiu $5,$5,1 addu $2,$17,$2 lbu $3,7824($2) sb $3,216($4) .set noreorder .set nomacro bne $5,$6,$L74 addiu $4,$4,1 .set macro .set reorder lw $3,7864($sp) lui $2,%hi(simple_idct248_put) lw $4,664($18) addiu $2,$2,%lo(simple_idct248_put) sw $3,5984($16) .set noreorder .set nomacro beq $4,$0,$L76 sw $2,5992($16) .set macro .set reorder lui $2,%hi(ff_zigzag248_direct) lui $3,%hi(ff_zigzag248_direct+64) addiu $6,$2,%lo(ff_zigzag248_direct) addiu $7,$3,%lo(ff_zigzag248_direct+64) move $5,$16$L78: lbu $4,0($6) addiu $6,$6,1 andi $2,$4,0x8 andi $3,$4,0x30 sll $2,$2,2 sra $3,$3,1 addu $2,$2,$17 addu $2,$2,$3 andi $4,$4,0x7 addu $2,$2,$4 lbu $3,7824($2) sb $3,280($5) .set noreorder .set nomacro bne $6,$7,$L78 addiu $5,$5,1 .set macro .set reorder$L79: move $13,$0$L116: lui $12,%hi(dv_quant_shifts)$L118: addiu $11,$sp,7944 lui $17,%hi(dv_248_areas+1) addiu $14,$sp,7881 lui $15,%hi(dv_88_areas+1)$L85: move $6,$14 addiu $7,$15,%lo(dv_88_areas+1) sll $10,$13,2 sll $9,$13,6$L86: lbu $2,0($7) addiu $3,$12,%lo(dv_quant_shifts) addu $8,$10,$3 addu $2,$8,$2 lbu $3,0($2) lbu $5,0($6) addiu $3,$3,1 andi $3,$3,0x00ff addu $2,$9,$16 addu $2,$2,$5 addiu $4,$3,1 addiu $6,$6,1 sb $4,3160($2) sb $3,344($2) .set noreorder .set nomacro bne $6,$11,$L86 addiu $7,$7,1 .set macro .set reorder addiu $2,$9,1753 addu $4,$16,$2 lui $2,%hi(dv_248_areas+64) move $6,$8 addiu $7,$2,%lo(dv_248_areas+64) addiu $5,$17,%lo(dv_248_areas+1)$L88: lbu $2,0($5) addiu $5,$5,1 addu $2,$6,$2 lbu $3,0($2) addiu $3,$3,1 andi $3,$3,0x00ff addiu $2,$3,1 sb $2,2816($4) sb $3,0($4) .set noreorder .set nomacro bne $5,$7,$L88 addiu $4,$4,1 .set macro .set reorder addiu $13,$13,1 li $2,22 # 0x16 .set noreorder .set nomacro bne $13,$2,$L85 addiu $2,$16,8 .set macro .set reorder sw $2,408($18) sw $18,208($16) lw $31,8124($sp) lw $22,8120($sp) lw $21,8116($sp) lw $20,8112($sp) lw $19,8108($sp) lw $18,8104($sp) lw $17,8100($sp) lw $16,8096($sp) move $2,$0 .set noreorder .set nomacro j $31 addiu $sp,$sp,8128 .set macro .set reorder$L76: addiu $4,$16,280 andi $2,$4,0x3 .set noreorder .set nomacro bne $2,$0,$L80 lui $5,%hi(ff_zigzag248_direct) .set macro .set reorder addiu $6,$5,%lo(ff_zigzag248_direct) andi $2,$6,0x3 .set noreorder .set nomacro beq $2,$0,$L115 addiu $3,$16,276 .set macro .set reorder$L80: addiu $5,$5,%lo(ff_zigzag248_direct) .set noreorder .set nomacro jal memcpy li $6,64 # 0x40 .set macro .set reorder .set noreorder .set nomacro j $L116 move $13,$0 .set macro .set reorder$L93: .set noreorder .set nomacro j $L50 addiu $17,$sp,56 .set macro .set reorder$L115: addiu $5,$16,340 sltu $2,$3,$5 .set noreorder .set nomacro beq $2,$0,$L79 addiu $4,$6,-4 .set macro .set reorder$L84:#APP S32LDI xr1,$4,4 S32LDI xr2,$4,4 S32LDI xr3,$4,4 S32LDI xr4,$4,4 S32LDI xr5,$4,4 S32LDI xr6,$4,4 S32LDI xr7,$4,4 S32LDI xr8,$4,4 S32SDI xr1,$3,4 S32SDI xr2,$3,4 S32SDI xr3,$3,4 S32SDI xr4,$3,4 S32SDI xr5,$3,4 S32SDI xr6,$3,4 S32SDI xr7,$3,4 S32SDI xr8,$3,4#NO_APP sltu $2,$3,$5 .set noreorder .set nomacro bne $2,$0,$L84 move $13,$0 .set macro .set reorder .set noreorder .set nomacro j $L118 lui $12,%hi(dv_quant_shifts) .set macro .set reorder .end dvvideo_init .section .rodata.str1.4 .align 2$LC1: .ascii "AC EOB marker is absent pos=%d\012\000" .section .text.dv_decode_mt,"ax",@progbits .align 2 .align 5 .ent dv_decode_mt .type dv_decode_mt, @functiondv_decode_mt: .frame $sp,5272,$31 # vars= 5216, regs= 10/0, args= 16, gp= 0 .mask 0xc0ff0000,-4 .fmask 0x00000000,0 addiu $sp,$sp,-5272 sw $31,5268($sp) sw $fp,5264($sp) sw $23,5260($sp) sw $22,5256($sp) sw $21,5252($sp) sw $20,5248($sp) sw $19,5244($sp) sw $18,5240($sp) sw $17,5236($sp) sw $16,5232($sp) lw $23,136($4) sw $5,5276($sp) lw $4,0($23) lw $2,208($23) lw $9,8($4) lw $5,664($2) sll $3,$9,2 sll $2,$9,5 subu $2,$2,$3 subu $6,$2,$9 lw $2,5276($sp) lw $4,52($4) div $0,$2,$6 teq $6,$0,7 li $3,3 # 0x3 subu $5,$3,$5 li $7,4 # 0x4 sw $4,5200($sp) sw $5,5196($sp) lw $11,212($23) addiu $10,$sp,5152 addiu $4,$sp,1312 .set noreorder .set nomacro beq $7,$3,$L123 mfhi $8 .set macro .set reorder li $2,1 # 0x1 beq $7,$2,$L283$L120: addiu $5,$4,-4 move $2,$0#APP S32I2M xr1,$2#NO_APP andi $3,$4,0x1f .set noreorder .set nomacro beq $3,$0,$L315 addiu $2,$10,-31 .set macro .set reorder li $2,-32 # 0xffffffffffffffe0 and $2,$5,$2 addiu $4,$2,32 sltu $3,$5,$4 .set noreorder .set nomacro beq $3,$0,$L315 addiu $2,$10,-31 .set macro .set reorder$L269:#APP S32SDI xr1,$5,4#NO_APP sltu $2,$5,$4 .set noreorder .set nomacro bne $2,$0,$L269 addiu $2,$10,-31 .set macro .set reorder$L315: li $3,-32 # 0xffffffffffffffe0 and $3,$2,$3 sltu $4,$5,$3 .set noreorder .set nomacro beq $4,$0,$L127 addiu $2,$5,4 .set macro .set reorder$L316:#APP pref 30,0($2) S32SDI xr1,$5,4 S32SDI xr1,$5,4 S32SDI xr1,$5,4 S32SDI xr1,$5,4 S32SDI xr1,$5,4 S32SDI xr1,$5,4 S32SDI xr1,$5,4 S32SDI xr1,$5,4#NO_APP sltu $2,$5,$3 .set noreorder .set nomacro bne $2,$0,$L316 addiu $2,$5,4 .set macro .set reorder$L127: addiu $3,$10,-4 sltu $2,$5,$3 beq $2,$0,$L129$L271:#APP S32SDI xr1,$5,4#NO_APP sltu $2,$5,$3 bne $2,$0,$L271$L129: andi $3,$10,0x3
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -