📄 mpeg12.s
字号:
.file 1 "mpeg12.c".section .mdebug.abi32.previous.section .text.ff_mpeg12_common_init,"ax",@progbits.align 2.align 5.globl ff_mpeg12_common_init.ent ff_mpeg12_common_init.type ff_mpeg12_common_init, @functionff_mpeg12_common_init:.frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0.mask 0x00000000,0.fmask 0x00000000,0.set noreorder.set nomacrolw $3,8504($4)lui $2,%hi(mpeg2_dc_scale_table)sll $3,$3,2addiu $2,$2,%lo(mpeg2_dc_scale_table)addu $3,$3,$2lw $5,0($3)sw $5,1972($4)j $31sw $5,1976($4).set macro.set reorder.end ff_mpeg12_common_init.section .text.mpeg12_init,"ax",@progbits.align 2.align 5.globl mpeg12_init.ent mpeg12_init.type mpeg12_init, @functionmpeg12_init:.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(done)j $31sw $0,%lo(done)($2).set macro.set reorder.end mpeg12_init.section .rodata.str1.4,"aMS",@progbits,1.align 2$LC0:.ascii "invalid dc code at\012\000".section .text.decode_dc,"ax",@progbits.align 2.align 5.ent decode_dc.type decode_dc, @functiondecode_dc:.frame $sp,24,$31 # vars= 0, regs= 1/0, args= 16, gp= 0.mask 0x80000000,-8.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-24sw $31,16($sp)bne $5,$0,$L6move $11,$4lw $9,8($4)lw $12,0($4)sra $4,$9,3addu $4,$12,$4lbu $3,0($4)lbu $5,1($4)lbu $6,3($4)lbu $2,2($4)sll $3,$3,24sll $5,$5,16or $3,$3,$5or $3,$3,$6sll $2,$2,8or $2,$2,$3andi $4,$9,0x7sll $2,$2,$4lui $3,%hi(dc_lum_vlc+4)lw $8,%lo(dc_lum_vlc+4)($3)srl $2,$2,23sll $2,$2,2addu $2,$8,$2lh $7,2($2)bltz $7,$L22lh $10,0($2)$L11:addu $2,$9,$7bgez $10,$L13sw $2,8($11)$L23:lui $6,%hi($LC0)addiu $6,$6,%lo($LC0)move $4,$0jal av_logmove $5,$0li $2,65535 # 0xffff$L15:lw $31,16($sp)j $31addiu $sp,$sp,24$L6:lw $9,8($4)lw $12,0($4)sra $4,$9,3addu $4,$12,$4lbu $3,0($4)lbu $5,1($4)lbu $6,3($4)lbu $2,2($4)sll $3,$3,24sll $5,$5,16or $3,$3,$5or $3,$3,$6sll $2,$2,8or $2,$2,$3andi $4,$9,0x7sll $2,$2,$4lui $3,%hi(dc_chroma_vlc+4)lw $8,%lo(dc_chroma_vlc+4)($3)srl $2,$2,23sll $2,$2,2addu $2,$8,$2lh $7,2($2)bgez $7,$L11lh $10,0($2)$L22:addiu $9,$9,9sra $4,$9,3addu $4,$12,$4lbu $3,0($4)lbu $5,1($4)lbu $6,3($4)lbu $2,2($4)sll $3,$3,24sll $5,$5,16or $3,$3,$5or $3,$3,$6sll $2,$2,8or $2,$2,$3andi $4,$9,0x7sll $2,$2,$4srl $2,$2,$7addu $2,$2,$10sll $2,$2,2addu $2,$8,$2lh $7,2($2)lh $10,0($2)addu $2,$9,$7bltz $10,$L23sw $2,8($11)$L13:beq $10,$0,$L24subu $8,$0,$10lw $6,8($11)sra $4,$6,3addu $4,$4,$12lbu $3,0($4)lbu $5,1($4)lbu $7,3($4)lbu $2,2($4)sll $3,$3,24sll $5,$5,16or $3,$3,$5or $3,$3,$7sll $2,$2,8or $2,$2,$3andi $4,$6,0x7sll $2,$2,$4nor $3,$0,$2sra $3,$3,31xor $2,$2,$3addu $6,$10,$6srl $2,$2,$8sw $6,8($11)xor $2,$2,$3lw $31,16($sp)subu $2,$2,$3j $31addiu $sp,$sp,24$L24:j $L15move $2,$0.set macro.set reorder.end decode_dc.section .text.decode_end,"ax",@progbits.align 2.align 5.ent decode_end.type decode_end, @functiondecode_end:.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)lw $16,136($4)jal av_freepaddiu $4,$16,4680jal av_freepaddiu $4,$16,3204sw $0,4684($16)lw $31,20($sp)lw $16,16($sp)move $2,$0j $31addiu $sp,$sp,24.set macro.set reorder.end decode_end.section .text.init_2d_vlc_rl,"ax",@progbits.align 2.align 5.ent init_2d_vlc_rl.type init_2d_vlc_rl, @functioninit_2d_vlc_rl:.frame $sp,72,$31 # vars= 0, regs= 3/0, args= 56, gp= 0.mask 0x80030000,-8.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-72sw $17,60($sp)sw $16,56($sp)sw $31,64($sp)lw $8,8($4)lw $6,0($4)move $16,$5li $2,4 # 0x4li $3,2 # 0x2move $17,$4addiu $6,$6,2addiu $7,$8,2addiu $4,$4,44li $5,9 # 0x9sw $2,28($sp)sw $3,32($sp)sw $2,16($sp)sw $3,20($sp)sw $8,24($sp)sw $0,36($sp)sw $0,40($sp)sw $0,44($sp)jal init_vlc_sparsesw $16,48($sp)beq $16,$0,$L28noplw $4,52($17)jal av_mallocz_staticsll $4,$4,2sw $2,60($17)$L30:lw $2,52($17)blez $2,$L45lw $31,64($sp)move $9,$0move $8,$0$L33:lw $2,48($17)li $4,64 # 0x40addu $2,$8,$2lh $6,2($2)li $7,65 # 0x41beq $6,$0,$L36lh $5,0($2)sll $4,$5,16sra $4,$4,16bltz $6,$L36move $7,$0lw $2,0($17)move $4,$0li $7,65 # 0x41beq $5,$2,$L36addiu $3,$2,1li $4,127 # 0x7fbeq $5,$3,$L36move $7,$0lw $2,12($17)lw $4,16($17)addu $2,$2,$5lb $3,0($2)addu $4,$5,$4addiu $3,$3,1lb $4,0($4)andi $7,$3,0x00ff$L36:lw $2,60($17)addiu $9,$9,1addu $2,$2,$8sb $6,2($2)lw $3,60($17)addu $3,$3,$8sb $7,3($3)lw $2,52($17)sh $4,0($3)slt $2,$9,$2bne $2,$0,$L33addiu $8,$8,4lw $31,64($sp)$L45:lw $17,60($sp)lw $16,56($sp)j $31addiu $sp,$sp,72$L28:lw $4,52($17)jal av_mallocsll $4,$4,2j $L30sw $2,60($17).set macro.set reorder.end init_2d_vlc_rl.section .text.init_vlcs,"ax",@progbits.align 2.align 5.ent init_vlcs.type init_vlcs, @functioninit_vlcs:.frame $sp,72,$31 # vars= 0, regs= 3/0, args= 56, gp= 0.mask 0x80030000,-8.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-72sw $31,64($sp)sw $17,60($sp)sw $16,56($sp)lui $3,%hi(done)lw $2,%lo(done)($3)beq $2,$0,$L50lw $31,64($sp)lw $17,60($sp)lw $16,56($sp)j $31addiu $sp,$sp,72$L50:lui $4,%hi(dc_lum_vlc)lui $7,%hi(ff_mpeg12_vlc_dc_lum_bits)lui $2,%hi(ff_mpeg12_vlc_dc_lum_code)li $16,1 # 0x1li $17,2 # 0x2addiu $4,$4,%lo(dc_lum_vlc)addiu $7,$7,%lo(ff_mpeg12_vlc_dc_lum_bits)li $5,9 # 0x9li $6,12 # 0xcaddiu $2,$2,%lo(ff_mpeg12_vlc_dc_lum_code)sw $16,%lo(done)($3)sw $16,16($sp)sw $16,20($sp)sw $17,28($sp)sw $17,32($sp)sw $16,48($sp)sw $2,24($sp)sw $0,36($sp)sw $0,40($sp)jal init_vlc_sparsesw $0,44($sp)lui $4,%hi(dc_chroma_vlc)lui $7,%hi(ff_mpeg12_vlc_dc_chroma_bits)lui $2,%hi(ff_mpeg12_vlc_dc_chroma_code)addiu $4,$4,%lo(dc_chroma_vlc)addiu $7,$7,%lo(ff_mpeg12_vlc_dc_chroma_bits)li $5,9 # 0x9li $6,12 # 0xcaddiu $2,$2,%lo(ff_mpeg12_vlc_dc_chroma_code)sw $16,16($sp)sw $16,20($sp)sw $17,28($sp)sw $17,32($sp)sw $16,48($sp)sw $2,24($sp)sw $0,36($sp)sw $0,40($sp)jal init_vlc_sparsesw $0,44($sp)lui $3,%hi(ff_mpeg12_mbMotionVectorTable)addiu $3,$3,%lo(ff_mpeg12_mbMotionVectorTable)lui $4,%hi(mv_vlc)addiu $7,$3,1addiu $4,$4,%lo(mv_vlc)li $5,9 # 0x9li $6,17 # 0x11sw $17,16($sp)sw $16,20($sp)sw $3,24($sp)sw $17,28($sp)sw $16,32($sp)sw $16,48($sp)sw $0,36($sp)sw $0,40($sp)jal init_vlc_sparsesw $0,44($sp)lui $3,%hi(ff_mpeg12_mbAddrIncrTable)addiu $3,$3,%lo(ff_mpeg12_mbAddrIncrTable)lui $4,%hi(mbincr_vlc)addiu $7,$3,1addiu $4,$4,%lo(mbincr_vlc)li $5,9 # 0x9li $6,36 # 0x24sw $17,16($sp)sw $16,20($sp)sw $3,24($sp)sw $17,28($sp)sw $16,32($sp)sw $16,48($sp)sw $0,36($sp)sw $0,40($sp)jal init_vlc_sparsesw $0,44($sp)lui $3,%hi(ff_mpeg12_mbPatTable)addiu $3,$3,%lo(ff_mpeg12_mbPatTable)lui $4,%hi(mb_pat_vlc)addiu $7,$3,1addiu $4,$4,%lo(mb_pat_vlc)li $5,9 # 0x9li $6,64 # 0x40sw $17,16($sp)sw $16,20($sp)sw $3,24($sp)sw $17,28($sp)sw $16,32($sp)sw $16,48($sp)sw $0,36($sp)sw $0,40($sp)jal init_vlc_sparsesw $0,44($sp)lui $3,%hi(table_mb_ptype)addiu $3,$3,%lo(table_mb_ptype)lui $4,%hi(mb_ptype_vlc)addiu $7,$3,1addiu $4,$4,%lo(mb_ptype_vlc)li $5,6 # 0x6li $6,7 # 0x7sw $17,16($sp)sw $16,20($sp)sw $3,24($sp)sw $17,28($sp)sw $16,32($sp)sw $16,48($sp)sw $0,36($sp)sw $0,40($sp)jal init_vlc_sparsesw $0,44($sp)lui $3,%hi(table_mb_btype)addiu $3,$3,%lo(table_mb_btype)lui $4,%hi(mb_btype_vlc)addiu $7,$3,1li $6,11 # 0xbaddiu $4,$4,%lo(mb_btype_vlc)li $5,6 # 0x6sw $3,24($sp)sw $17,28($sp)sw $16,48($sp)sw $17,16($sp)sw $16,20($sp)sw $16,32($sp)lui $17,%hi(ff_rl_mpeg1)sw $0,36($sp)sw $0,40($sp)jal init_vlc_sparsesw $0,44($sp)lui $5,%hi(ff_mpeg12_static_rl_table_store)addiu $4,$17,%lo(ff_rl_mpeg1)jal init_rladdiu $5,$5,%lo(ff_mpeg12_static_rl_table_store)lui $16,%hi(ff_rl_mpeg2)lui $5,%hi(ff_mpeg12_static_rl_table_store+390)addiu $4,$16,%lo(ff_rl_mpeg2)jal init_rladdiu $5,$5,%lo(ff_mpeg12_static_rl_table_store+390)addiu $4,$17,%lo(ff_rl_mpeg1)jal init_2d_vlc_rlli $5,1 # 0x1addiu $4,$16,%lo(ff_rl_mpeg2)lw $31,64($sp)lw $17,60($sp)lw $16,56($sp)li $5,1 # 0x1j init_2d_vlc_rladdiu $sp,$sp,72.set macro.set reorder.end init_vlcs.section .text.decode_init,"ax",@progbits.align 2.align 5.ent decode_init.type decode_init, @functiondecode_init:.frame $sp,32,$31 # vars= 0, regs= 4/0, args= 16, gp= 0.mask 0x80070000,-4.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-32sw $31,28($sp)sw $18,24($sp)sw $17,20($sp)sw $16,16($sp)lw $16,136($4)move $17,$4move $5,$4jal dsputil_initaddiu $4,$16,4lw $3,668($17)addiu $18,$16,3120addiu $2,$3,15slt $4,$2,0addiu $3,$3,30movn $2,$3,$4sra $2,$2,4sw $2,3508($16)lw $3,672($17)sw $18,408($17)addiu $2,$3,15slt $4,$2,0addiu $3,$3,30movn $2,$3,$4sra $2,$2,4sw $2,3512($16)jal init_vlcssw $17,0($16)lui $6,%hi(ff_zigzag_direct)addiu $4,$16,2904addiu $5,$16,3356jal ff_init_scantableaddiu $6,$6,%lo(ff_zigzag_direct)lw $2,3508($16)sw $2,88($18)lw $4,3512($16)jal av_malloczmul $4,$2,$4sw $2,84($18)sw $0,52($17)lw $31,28($sp)lw $18,24($sp)lw $17,20($sp)lw $16,16($sp)move $2,$0j $31addiu $sp,$sp,32.set macro.set reorder.end decode_init.section .text.ff_mpeg1_find_frame_end,"ax",@progbits.align 2.align 5.globl ff_mpeg1_find_frame_end.ent ff_mpeg1_find_frame_end.type ff_mpeg1_find_frame_end, @functionff_mpeg1_find_frame_end:.frame $sp,56,$31 # vars= 8, regs= 8/0, args= 16, gp= 0.mask 0x807f0000,-4.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-56sw $22,48($sp)sw $17,28($sp)sw $16,24($sp)sw $31,52($sp)sw $21,44($sp)sw $20,40($sp)sw $19,36($sp)sw $18,32($sp)lw $7,16($4)lw $2,20($4)move $22,$4sw $7,16($sp)move $16,$5bne $2,$0,$L56move $17,$6blez $6,$L77addu $18,$6,$5move $4,$0addiu $21,$sp,16j $L60li $19,439 # 0x1b7$L85:beq $7,$19,$L79li $2,-1 # 0xffffffffffffffffbeq $5,$0,$L84nop$L60:addu $4,$16,$4move $5,$18jal ff_find_start_codemove $6,$21lw $7,16($sp)subu $3,$2,$16addiu $2,$7,-257sltu $2,$2,175move $4,$3beq $2,$0,$L85slt $5,$3,$17li $2,1 # 0x1move $4,$3beq $17,$0,$L86sw $2,20($22)$L68:slt $2,$4,$17$L91:beq $2,$0,$L77addu $18,$16,$17addiu $21,$sp,16li $20,-256 # 0xffffffffffffff00li $19,256 # 0x100addu $4,$4,$16$L90:move $5,$18jal ff_find_start_codemove $6,$21lw $7,16($sp)subu $6,$2,$16and $3,$7,$20addiu $2,$7,-257move $4,$6sltu $2,$2,175beq $3,$19,$L87slt $5,$6,$17$L71:bne $5,$0,$L90addu $4,$4,$16subu $4,$4,$16$L58:sw $7,16($22)$L89:li $3,-100 # 0xffffffffffffff9clw $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)move $2,$3j $31addiu $sp,$sp,56$L56:bne $17,$0,$L68move $4,$0j $L88move $3,$0$L87:bne $2,$0,$L71li $2,-1 # 0xffffffffffffffffsw $2,16($22)sw $0,20($22)addiu $3,$6,-4lw $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)move $2,$3j $31addiu $sp,$sp,56$L86:move $3,$0$L88: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)move $2,$3j $31addiu $sp,$sp,56$L79:sw $2,16($22)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)move $2,$3j $31addiu $sp,$sp,56$L84:lw $2,20($22)bne $2,$0,$L91slt $2,$4,$17j $L89sw $7,16($22)$L77:j $L58lw $7,16($sp).set macro.set reorder.end ff_mpeg1_find_frame_end.section .text.mpeg_decode_end,"ax",@progbits.align 2.align 5.ent mpeg_decode_end.type mpeg_decode_end, @functionmpeg_decode_end:.frame $sp,24,$31 # vars= 0, regs= 1/0, args= 16, gp= 0.mask 0x80000000,-8.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-24sw $31,16($sp)lw $4,136($4)lw $2,8704($4)beq $2,$0,$L96lw $31,16($sp)jal MPV_common_endnoplw $31,16($sp)$L96:move $2,$0j $31addiu $sp,$sp,24.set macro.set reorder.end mpeg_decode_end.section .text.mpeg_decode_init,"ax",@progbits.align 2.align 5.ent mpeg_decode_init.type mpeg_decode_init, @functionmpeg_decode_init:.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)move $17,$4lw $16,136($4)move $3,$0li $4,64 # 0x40addu $2,$16,$3$L103:sb $3,5040($2)addiu $3,$3,1bne $3,$4,$L103addu $2,$16,$3jal MPV_decode_defaultsmove $4,$16lw $3,8504($16)lw $4,12($17)lui $2,%hi(mpeg2_dc_scale_table)addiu $2,$2,%lo(mpeg2_dc_scale_table)sll $3,$3,2sw $4,56($16)addu $3,$3,$2lw $4,0($3)lw $2,604($17)sw $17,0($16)sw $2,60($16)sw $4,1972($16)jal init_vlcssw $4,1976($16)lw $2,132($17)sw $0,8704($16)lw $3,8($2)sw $0,124($16)sw $3,44($16)sw $0,8708($16)lw $31,24($sp)lw $17,20($sp)lw $16,16($sp)move $2,$0j $31addiu $sp,$sp,32.set macro.set reorder.end mpeg_decode_init.section .text.ff_mpeg1_clean_buffers,"ax",@progbits.align 2.align 5.globl ff_mpeg1_clean_buffers.ent ff_mpeg1_clean_buffers.type ff_mpeg1_clean_buffers, @functionff_mpeg1_clean_buffers:.frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0.mask 0x00000000,0.fmask 0x00000000,0.set noreorder.set nomacrolw $3,8504($4)li $2,1 # 0x1addiu $3,$3,7sll $2,$2,$3sw $2,1904($4)sw $2,1896($4)sw $2,1900($4)move $5,$0addiu $4,$4,5524j memsetli $6,32 # 0x20.set macro.set reorder.end ff_mpeg1_clean_buffers.section .text.mpeg_decode_motion,"ax",@progbits.align 2.align 5.ent mpeg_decode_motion.type mpeg_decode_motion, @functionmpeg_decode_motion:.frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0.mask 0x00000000,0.fmask 0x00000000,0.set noreorder.set nomacroaddiu $12,$4,8448lw $9,8($12)lw $11,8448($4)sra $4,$9,3addu $4,$11,$4lbu $3,0($4)lbu $7,1($4)lbu $8,3($4)lbu $2,2($4)sll $3,$3,24sll $7,$7,16or $3,$3,$7or $3,$3,$8sll $2,$2,8or $2,$2,$3andi $4,$9,0x7sll $2,$2,$4lui $3,%hi(mv_vlc+4)lw $14,%lo(mv_vlc+4)($3)srl $2,$2,23sll $2,$2,2addu $2,$14,$2lh $10,2($2)move $13,$6move $15,$5bltz $10,$L119lh $8,0($2)$L107:addu $7,$9,$10beq $8,$0,$L109sw $7,8($12)sra $2,$7,3addiu $9,$15,-1addu $3,$11,$2bltz $8,$L120addiu $4,$7,1sra $2,$4,3addu $6,$2,$11addiu $15,$8,-1move $2,$8andi $11,$4,0x7lbu $8,0($3)subu $10,$0,$9addu $14,$4,$9bne $9,$0,$L121sw $4,8($12)$L115:andi $3,$7,0x7sll $3,$8,$3andi $3,$3,0x00ff
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -