📄 asm_h264idct.s
字号:
#include "kxmips.h"
#define $fp $30
#define mad madd
// .file 1 "h264idct.c"
// .section .mdebug.abi32
.data
// .previous
.text
.align 2
.globl ff_h264_idct_add_c
// .ent ff_h264_idct_add_c
// .type ff_h264_idct_add_c, @function
.text
.align 2
LEAF_ENTRY(ff_h264_idct_add_c)
.frame $sp,16,$31 # vars= 0, regs= 4/0, args= 0, gp= 0
.mask 0x000f0000,-4
.fmask 0x00000000,0
addiu $sp,$sp,-16
sw $19,12($sp)
sw $16,0($sp)
sw $18,8($sp)
sw $17,4($sp)
lhu $3,0($5)
move $11,$5
move $16,$4
addiu $2,$3,32
move $19,$6
sh $2,0($5)
la $25,cropTbl+1024
move $9,$5
li $10,3 # 0x3
$L5:
lh $3,2($9)
lh $24,6($9)
lh $15,0($9)
lh $17,4($9)
sra $2,$24,1
sra $18,$3,1
subu $12,$15,$17
addu $14,$2,$3
subu $4,$18,$24
addu $13,$15,$17
subu $7,$12,$4
subu $6,$13,$14
addu $8,$13,$14
addu $5,$12,$4
addiu $10,$10,-1
sh $8,0($9)
sh $5,2($9)
sh $7,4($9)
sh $6,6($9)
.set noreorder
.set nomacro
bgez $10,$L5
addiu $9,$9,8
.set macro
.set reorder
sll $17,$19,1
addu $9,$17,$19
addu $18,$9,$16
move $15,$11
move $24,$0
$L9:
lh $6,24($15)
lh $7,8($15)
lh $12,16($15)
lh $4,0($15)
addu $10,$16,$24
lbu $14,0($10)
sra $9,$6,1
addu $11,$9,$7
addu $9,$4,$12
addu $3,$9,$11
sra $2,$3,6
addu $13,$14,$25
addu $14,$10,$19
addu $8,$13,$2
sra $5,$7,1
lbu $13,0($14)
subu $4,$4,$12
subu $5,$5,$6
lbu $12,0($8)
addu $3,$4,$5
addu $7,$17,$16
addu $7,$7,$24
sra $2,$3,6
addu $8,$13,$25
addu $13,$18,$24
lbu $3,0($7)
addu $6,$8,$2
lbu $2,0($13)
sb $12,0($10)
lbu $8,0($6)
subu $6,$4,$5
sra $10,$6,6
addu $3,$3,$25
sb $8,0($14)
addu $14,$3,$10
lbu $5,0($14)
subu $4,$9,$11
sra $12,$4,6
addu $8,$2,$25
sb $5,0($7)
addu $6,$8,$12
lbu $11,0($6)
addiu $24,$24,1
slt $10,$24,4
sb $11,0($13)
.set noreorder
.set nomacro
bne $10,$0,$L9
addiu $15,$15,2
.set macro
.set reorder
lw $19,12($sp)
lw $18,8($sp)
lw $17,4($sp)
lw $16,0($sp)
.set noreorder
.set nomacro
j $31
addiu $sp,$sp,16
.set macro
.set reorder
.end ff_h264_idct_add_c
.align 2
.globl ff_h264_lowres_idct_add_c
// .ent ff_h264_lowres_idct_add_c
// .type ff_h264_lowres_idct_add_c, @function
.text
.align 2
LEAF_ENTRY(ff_h264_lowres_idct_add_c)
.frame $sp,16,$31 # vars= 0, regs= 4/0, args= 0, gp= 0
.mask 0x000f0000,-4
.fmask 0x00000000,0
addiu $sp,$sp,-16
sw $19,12($sp)
sw $16,0($sp)
sw $18,8($sp)
sw $17,4($sp)
lhu $3,0($6)
move $11,$6
move $16,$4
addiu $2,$3,4
move $19,$5
sh $2,0($6)
la $25,cropTbl+1024
move $9,$6
li $10,3 # 0x3
$L24:
lh $3,2($9)
lh $24,6($9)
lh $15,0($9)
lh $17,4($9)
sra $2,$24,1
sra $18,$3,1
subu $12,$15,$17
addu $14,$2,$3
subu $4,$18,$24
addu $13,$15,$17
subu $7,$12,$4
subu $6,$13,$14
addu $8,$13,$14
addu $5,$12,$4
addiu $10,$10,-1
sh $8,0($9)
sh $5,2($9)
sh $7,4($9)
sh $6,6($9)
.set noreorder
.set nomacro
bgez $10,$L24
addiu $9,$9,16
.set macro
.set reorder
sll $17,$19,1
addu $9,$17,$19
addu $18,$9,$16
move $15,$11
move $24,$0
$L28:
lh $6,48($15)
lh $7,16($15)
lh $12,32($15)
lh $4,0($15)
addu $10,$16,$24
lbu $14,0($10)
sra $9,$6,1
addu $11,$9,$7
addu $9,$4,$12
addu $3,$9,$11
sra $2,$3,3
addu $13,$14,$25
addu $14,$10,$19
addu $8,$13,$2
sra $5,$7,1
lbu $13,0($14)
subu $4,$4,$12
subu $5,$5,$6
lbu $12,0($8)
addu $3,$4,$5
addu $7,$17,$16
addu $7,$7,$24
sra $2,$3,3
addu $8,$13,$25
addu $13,$18,$24
lbu $3,0($7)
addu $6,$8,$2
lbu $2,0($13)
sb $12,0($10)
lbu $8,0($6)
subu $6,$4,$5
sra $10,$6,3
addu $3,$3,$25
sb $8,0($14)
addu $14,$3,$10
lbu $5,0($14)
subu $4,$9,$11
sra $12,$4,3
addu $8,$2,$25
sb $5,0($7)
addu $6,$8,$12
lbu $11,0($6)
addiu $24,$24,1
slt $10,$24,4
sb $11,0($13)
.set noreorder
.set nomacro
bne $10,$0,$L28
addiu $15,$15,2
.set macro
.set reorder
lw $19,12($sp)
lw $18,8($sp)
lw $17,4($sp)
lw $16,0($sp)
.set noreorder
.set nomacro
j $31
addiu $sp,$sp,16
.set macro
.set reorder
.end ff_h264_lowres_idct_add_c
.align 2
.globl ff_h264_lowres_idct_put_c
// .ent ff_h264_lowres_idct_put_c
// .type ff_h264_lowres_idct_put_c, @function
.text
.align 2
LEAF_ENTRY(ff_h264_lowres_idct_put_c)
.frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0
.mask 0x00000000,0
.fmask 0x00000000,0
lhu $3,0($6)
move $11,$6
move $24,$4
addiu $2,$3,4
move $15,$5
sh $2,0($6)
la $12,cropTbl+1024
move $9,$6
li $10,3 # 0x3
$L42:
lh $7,2($9)
lh $8,6($9)
lh $6,4($9)
lh $2,0($9)
sra $5,$7,1
sra $3,$8,1
subu $13,$2,$6
addu $25,$3,$7
subu $4,$5,$8
addu $14,$2,$6
subu $7,$13,$4
subu $6,$14,$25
addu $8,$14,$25
addu $5,$13,$4
addiu $10,$10,-1
sh $8,0($9)
sh $5,2($9)
sh $7,4($9)
sh $6,6($9)
.set noreorder
.set nomacro
bgez $10,$L42
addiu $9,$9,16
.set macro
.set reorder
sll $9,$15,1
addu $10,$9,$15
addu $14,$10,$24
addu $13,$9,$24
move $10,$11
move $11,$0
$L46:
lh $9,48($10)
lh $7,16($10)
lh $4,32($10)
lh $3,0($10)
sra $8,$9,1
addu $6,$8,$7
addu $25,$3,$4
addu $2,$25,$6
sra $5,$2,3
addu $2,$12,$5
sra $5,$7,1
subu $3,$3,$4
lbu $7,0($2)
subu $5,$5,$9
addu $9,$3,$5
sra $4,$9,3
addu $9,$24,$11
sb $7,0($9)
addu $2,$12,$4
lbu $7,0($2)
subu $3,$3,$5
sra $2,$3,3
addu $4,$9,$15
sb $7,0($4)
addu $9,$12,$2
lbu $7,0($9)
subu $3,$25,$6
addu $8,$13,$11
sra $5,$3,3
sb $7,0($8)
addu $6,$12,$5
lbu $4,0($6)
addu $2,$14,$11
addiu $11,$11,1
slt $25,$11,4
sb $4,0($2)
.set noreorder
.set nomacro
bne $25,$0,$L46
addiu $10,$10,2
.set macro
.set reorder
j $31
.end ff_h264_lowres_idct_put_c
.align 2
.globl ff_h264_idct8_add_c
// .ent ff_h264_idct8_add_c
// .type ff_h264_idct8_add_c, @function
.text
.align 2
LEAF_ENTRY(ff_h264_idct8_add_c)
.frame $sp,64,$31 # vars= 24, regs= 9/0, args= 0, gp= 0
.mask 0x40ff0000,-8
.fmask 0x00000000,0
addiu $sp,$sp,-64
sw $23,52($sp)
sw $22,48($sp)
sw $21,44($sp)
sw $18,32($sp)
sw $17,28($sp)
sw $16,24($sp)
sw $fp,56($sp)
sw $20,40($sp)
sw $19,36($sp)
lhu $3,0($5)
move $18,$5
move $22,$4
addiu $2,$3,32
move $23,$6
sh $2,0($5)
la $21,cropTbl+1024
move $16,$5
li $17,7 # 0x7
$L60:
lh $8,10($16)
lh $7,6($16)
lh $9,14($16)
lh $6,2($16)
lh $24,4($16)
lh $15,12($16)
lh $19,0($16)
lh $20,8($16)
addu $4,$7,$8
subu $12,$9,$6
subu $10,$8,$7
addu $25,$6,$9
subu $13,$10,$9
subu $11,$25,$7
addu $3,$12,$8
addu $25,$4,$6
sra $fp,$6,1
sra $2,$9,1
sra $5,$7,1
sra $14,$8,1
subu $10,$13,$2
subu $11,$11,$5
addu $12,$3,$14
addu $4,$25,$fp
sra $9,$15,1
sra $6,$24,1
addu $5,$9,$24
subu $fp,$19,$20
subu $2,$6,$15
sra $7,$11,2
sra $8,$10,2
addu $3,$19,$20
sra $13,$4,2
sra $14,$12,2
subu $9,$7,$12
subu $25,$4,$8
addu $7,$14,$11
addu $8,$13,$10
subu $19,$3,$5
subu $20,$fp,$2
addu $24,$3,$5
addu $15,$fp,$2
subu $5,$24,$25
subu $6,$15,$9
subu $10,$20,$7
subu $11,$19,$8
addu $12,$24,$25
addu $4,$15,$9
addu $13,$20,$7
addu $14,$19,$8
addiu $17,$17,-1
sh $12,0($16)
sh $5,14($16)
sh $4,2($16)
sh $6,12($16)
sh $13,4($16)
sh $10,10($16)
sh $14,6($16)
sh $11,8($16)
.set noreorder
.set nomacro
bgez $17,$L60
addiu $16,$16,16
.set macro
.set reorder
sll $fp,$23,1
sw $fp,12($sp)
lw $11,12($sp)
sll $3,$23,2
sll $14,$23,3
addu $fp,$11,$23
addu $24,$3,$23
subu $17,$14,$23
sll $20,$fp,1
addu $15,$24,$22
addu $19,$20,$22
addu $16,$17,$22
sw $3,16($sp)
sw $15,0($sp)
sw $19,4($sp)
sw $16,8($sp)
move $24,$18
move $25,$0
$L64:
lh $4,48($24)
lh $14,80($24)
lh $5,112($24)
lh $13,16($24)
lh $20,96($24)
lh $19,64($24)
lh $11,0($24)
lh $10,32($24)
subu $6,$14,$4
addu $8,$4,$14
subu $15,$6,$5
sra $12,$5,1
subu $15,$15,$12
addu $18,$8,$13
addu $12,$22,$25
sra $9,$13,1
sra $16,$20,1
lbu $3,0($12)
addu $16,$16,$10
addu $8,$18,$9
sra $17,$15,2
addu $9,$11,$19
subu $18,$8,$17
addu $17,$9,$16
addu $7,$17,$18
addu $6,$3,$21
sra $2,$7,6
addu $7,$6,$2
lbu $6,0($7)
addu $3,$13,$5
subu $7,$3,$4
sra $2,$4,1
subu $3,$5,$13
sb $6,0($12)
subu $7,$7,$2
addu $5,$3,$14
addu $12,$12,$23
sra $14,$14,1
sra $10,$10,1
lbu $4,0($12)
subu $11,$11,$19
subu $10,$10,$20
addu $19,$5,$14
sra $13,$7,2
subu $14,$13,$19
addu $13,$11,$10
addu $6,$13,$14
sra $2,$6,6
addu $20,$4,$21
lw $6,12($sp)
addu $3,$20,$2
lbu $20,0($3)
addu $4,$6,$22
addu $4,$4,$25
sb $20,0($12)
lbu $12,0($4)
sra $5,$19,2
addu $20,$5,$7
subu $19,$11,$10
addu $10,$19,$20
sra $2,$10,6
addu $7,$12,$21
addu $3,$7,$2
lbu $12,0($3)
addu $6,$fp,$22
addu $6,$6,$25
sb $12,0($4)
lbu $7,0($6)
sra $8,$8,2
addu $12,$8,$15
subu $9,$9,$16
addu $10,$9,$12
sra $2,$10,6
addu $3,$7,$21
lw $16,16($sp)
addu $15,$3,$2
lbu $10,0($15)
addu $4,$16,$22
addu $4,$4,$25
sb $10,0($6)
lbu $2,0($4)
subu $7,$9,$12
sra $3,$7,6
addu $8,$2,$21
addu $15,$8,$3
lbu $10,0($15)
lw $16,0($sp)
subu $12,$19,$20
sb $10,0($4)
addu $8,$16,$25
lbu $9,0($8)
sra $7,$12,6
lw $6,4($sp)
addu $2,$9,$21
addu $5,$2,$7
lbu $3,0($5)
addu $4,$6,$25
subu $11,$13,$14
sb $3,0($8)
lbu $20,0($4)
sra $19,$11,6
lw $15,8($sp)
addu $16,$20,$21
addu $10,$16,$19
lbu $6,0($10)
addu $5,$15,$25
subu $12,$17,$18
sb $6,0($4)
lbu $9,0($5)
sra $7,$12,6
addiu $25,$25,1
addu $8,$9,$21
addu $2,$8,$7
lbu $13,0($2)
slt $18,$25,8
addiu $24,$24,2
.set noreorder
.set nomacro
bne $18,$0,$L64
sb $13,0($5)
.set macro
.set reorder
lw $fp,56($sp)
lw $23,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)
.set noreorder
.set nomacro
j $31
addiu $sp,$sp,64
.set macro
.set reorder
.end ff_h264_idct8_add_c
.align 2
.globl ff_h264_idct_dc_add_c
// .ent ff_h264_idct_dc_add_c
// .type ff_h264_idct_dc_add_c, @function
.text
.align 2
LEAF_ENTRY(ff_h264_idct_dc_add_c)
.frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0
.mask 0x00000000,0
.fmask 0x00000000,0
lh $10,0($5)
lbu $11,0($4)
lbu $8,1($4)
addiu $9,$10,32
la $10,cropTbl+1024
sra $9,$9,6
addu $24,$11,$10
addu $13,$24,$9
lbu $7,0($13)
addu $2,$8,$10
lbu $5,2($4)
sb $7,0($4)
addu $3,$2,$9
lbu $15,0($3)
addu $25,$5,$10
lbu $12,3($4)
sb $15,1($4)
addu $14,$25,$9
lbu $11,0($14)
addu $24,$12,$10
addu $13,$24,$9
sb $11,2($4)
lbu $8,0($13)
addu $13,$4,$6
sll $24,$6,1
sb $8,3($4)
lbu $7,0($13)
lbu $5,1($13)
lbu $12,2($13)
addu $2,$7,$10
addu $3,$2,$9
lbu $15,0($3)
addu $25,$5,$10
addu $14,$25,$9
sb $15,0($13)
lbu $8,0($14)
addu $11,$12,$10
lbu $2,3($13)
sb $8,1($13)
addu $7,$11,$9
lbu $3,0($7)
addu $5,$2,$10
addu $25,$5,$9
sb $3,2($13)
lbu $14,0($25)
addu $7,$4,$24
addu $15,$24,$6
sb $14,3($13)
lbu $12,0($7)
lbu $6,1($7)
lbu $25,2($7)
addu $11,$12,$10
addu $8,$11,$9
lbu $5,0($8)
addu $2,$6,$10
addu $3,$2,$9
sb $5,0($7)
addu $4,$4,$15
lbu $15,0($3)
addu $24,$25,$10
addu $14,$24,$9
sb $15,1($7)
lbu $13,0($14)
sb $13,2($7)
lbu $12,3($7)
addu $11,$12,$10
addu $8,$11,$9
lbu $6,0($8)
sb $6,3($7)
lbu $5,0($4)
lbu $25,1($4)
lbu $13,2($4)
addu $2,$5,$10
addu $3,$2,$9
lbu $15,0($3)
addu $24,$25,$10
addu $14,$24,$9
sb $15,0($4)
lbu $11,0($14)
addu $12,$13,$10
lbu $7,3($4)
sb $11,1($4)
addu $8,$12,$9
lbu $6,0($8)
addu $5,$7,$10
addu $2,$5,$9
sb $6,2($4)
lbu $3,0($2)
.set noreorder
.set nomacro
j $31
sb $3,3($4)
.set macro
.set reorder
.end ff_h264_idct_dc_add_c
.align 2
.globl ff_h264_idct8_dc_add_c
// .ent ff_h264_idct8_dc_add_c
// .type ff_h264_idct8_dc_add_c, @function
.text
.align 2
LEAF_ENTRY(ff_h264_idct8_dc_add_c)
.frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0
.mask 0x00000000,0
.fmask 0x00000000,0
lh $3,0($5)
move $8,$4
la $10,cropTbl+1024
addiu $2,$3,32
sra $9,$2,6
move $11,$0
$L82:
move $7,$0
$L81:
addu $4,$8,$7
lbu $15,0($4)
addiu $7,$7,1
slt $5,$7,8
addu $14,$15,$10
addu $13,$14,$9
lbu $12,0($13)
.set noreorder
.set nomacro
bne $5,$0,$L81
sb $12,0($4)
.set macro
.set reorder
addiu $11,$11,1
slt $7,$11,8
.set noreorder
.set nomacro
bne $7,$0,$L82
addu $8,$8,$6
.set macro
.set reorder
j $31
.end ff_h264_idct8_dc_add_c
.data
.align 2
.comm cropTbl,2304,4
// .ident "GCC: (GNU) 3.4.4"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -