⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 asm_dsputil.s

📁 This the source release kit for the following system configuration(s): - AMD Alchemy(TM) DBAu1200(
💻 S
📖 第 1 页 / 共 5 页
字号:
#include "kxmips.h"
#define $fp $30
#define mad madd


//	.file	1 "dsputil.c"
//	.section .mdebug.abi32

	.data
//	.previous
	.globl	inverse
	.rdata
	.align	2
//	.type	inverse, @object
//	.size	inverse, 1024
inverse:
	.word	0
	.word	-1
	.word	-2147483648
	.word	1431655766
	.word	1073741824
	.word	858993460
	.word	715827883
	.word	613566757
	.word	536870912
	.word	477218589
	.word	429496730
	.word	390451573
	.word	357913942
	.word	330382100
	.word	306783379
	.word	286331154
	.word	268435456
	.word	252645136
	.word	238609295
	.word	226050911
	.word	214748365
	.word	204522253
	.word	195225787
	.word	186737709
	.word	178956971
	.word	171798692
	.word	165191050
	.word	159072863
	.word	153391690
	.word	148102321
	.word	143165577
	.word	138547333
	.word	134217728
	.word	130150525
	.word	126322568
	.word	122713352
	.word	119304648
	.word	116080198
	.word	113025456
	.word	110127367
	.word	107374183
	.word	104755300
	.word	102261127
	.word	99882961
	.word	97612894
	.word	95443718
	.word	93368855
	.word	91382283
	.word	89478486
	.word	87652394
	.word	85899346
	.word	84215046
	.word	82595525
	.word	81037119
	.word	79536432
	.word	78090315
	.word	76695845
	.word	75350304
	.word	74051161
	.word	72796056
	.word	71582789
	.word	70409300
	.word	69273667
	.word	68174085
	.word	67108864
	.word	66076420
	.word	65075263
	.word	64103990
	.word	63161284
	.word	62245903
	.word	61356676
	.word	60492498
	.word	59652324
	.word	58835169
	.word	58040099
	.word	57266231
	.word	56512728
	.word	55778797
	.word	55063684
	.word	54366675
	.word	53687092
	.word	53024288
	.word	52377650
	.word	51746594
	.word	51130564
	.word	50529028
	.word	49941481
	.word	49367441
	.word	48806447
	.word	48258060
	.word	47721859
	.word	47197443
	.word	46684428
	.word	46182445
	.word	45691142
	.word	45210183
	.word	44739243
	.word	44278014
	.word	43826197
	.word	43383509
	.word	42949673
	.word	42524429
	.word	42107523
	.word	41698712
	.word	41297763
	.word	40904451
	.word	40518560
	.word	40139882
	.word	39768216
	.word	39403370
	.word	39045158
	.word	38693400
	.word	38347923
	.word	38008561
	.word	37675152
	.word	37347542
	.word	37025581
	.word	36709123
	.word	36398028
	.word	36092163
	.word	35791395
	.word	35495598
	.word	35204650
	.word	34918434
	.word	34636834
	.word	34359739
	.word	34087043
	.word	33818641
	.word	33554432
	.word	33294321
	.word	33038210
	.word	32786010
	.word	32537632
	.word	32292988
	.word	32051995
	.word	31814573
	.word	31580642
	.word	31350127
	.word	31122952
	.word	30899046
	.word	30678338
	.word	30460761
	.word	30246249
	.word	30034737
	.word	29826162
	.word	29620465
	.word	29417585
	.word	29217465
	.word	29020050
	.word	28825284
	.word	28633116
	.word	28443493
	.word	28256364
	.word	28071682
	.word	27889399
	.word	27709467
	.word	27531842
	.word	27356480
	.word	27183338
	.word	27012373
	.word	26843546
	.word	26676816
	.word	26512144
	.word	26349493
	.word	26188825
	.word	26030105
	.word	25873297
	.word	25718368
	.word	25565282
	.word	25414008
	.word	25264514
	.word	25116768
	.word	24970741
	.word	24826401
	.word	24683721
	.word	24542671
	.word	24403224
	.word	24265352
	.word	24129030
	.word	23994231
	.word	23860930
	.word	23729102
	.word	23598722
	.word	23469767
	.word	23342214
	.word	23216040
	.word	23091223
	.word	22967740
	.word	22845571
	.word	22724695
	.word	22605092
	.word	22486740
	.word	22369622
	.word	22253717
	.word	22139007
	.word	22025474
	.word	21913099
	.word	21801865
	.word	21691755
	.word	21582751
	.word	21474837
	.word	21367997
	.word	21262215
	.word	21157475
	.word	21053762
	.word	20951060
	.word	20849356
	.word	20748635
	.word	20648882
	.word	20550083
	.word	20452226
	.word	20355296
	.word	20259280
	.word	20164166
	.word	20069941
	.word	19976593
	.word	19884108
	.word	19792477
	.word	19701685
	.word	19611723
	.word	19522579
	.word	19434242
	.word	19346700
	.word	19259944
	.word	19173962
	.word	19088744
	.word	19004281
	.word	18920561
	.word	18837576
	.word	18755316
	.word	18673771
	.word	18592933
	.word	18512791
	.word	18433337
	.word	18354562
	.word	18276457
	.word	18199014
	.word	18122225
	.word	18046082
	.word	17970575
	.word	17895698
	.word	17821442
	.word	17747799
	.word	17674763
	.word	17602325
	.word	17530479
	.word	17459217
	.word	17388532
	.word	17318417
	.word	17248865
	.word	17179870
	.word	17111424
	.word	17043522
	.word	16976156
	.word	16909321
	.word	16843010
	.globl	cropTbl
//	.section	.bss

	.data
	.align	2
//	.type	cropTbl, @object
//	.size	cropTbl, 2304
cropTbl:
	.space	2304
	.text
	.align	2
//	.ent	add_pixels8_c
//	.type	add_pixels8_c, @function

	.text
	.align	2
LEAF_ENTRY(add_pixels8_c)
	.frame	$sp,0,$31		# vars= 0, regs= 0/0, args= 0, gp= 0
	.mask	0x00000000,0
	.fmask	0x00000000,0
	move	$8,$4
	move	$9,$5
	move	$11,$6
	li	$10,7			# 0x7
$L5:
	lbu	$25,0($9)
	lbu	$24,0($8)
	lbu	$3,1($8)
	lbu	$7,2($8)
	addu	$15,$24,$25
	sb	$15,0($8)
	lbu	$14,2($9)
	lbu	$6,3($8)
	lbu	$24,4($8)
	addu	$13,$3,$14
	sb	$13,1($8)
	lbu	$5,4($9)
	lbu	$14,5($8)
	lbu	$13,6($8)
	addu	$12,$7,$5
	sb	$12,2($8)
	lbu	$2,6($9)
	lbu	$12,7($8)
	addiu	$10,$10,-1
	addu	$4,$6,$2
	sb	$4,3($8)
	lbu	$25,8($9)
	addu	$15,$24,$25
	sb	$15,4($8)
	lbu	$7,10($9)
	addu	$6,$14,$7
	sb	$6,5($8)
	lbu	$3,12($9)
	addu	$5,$13,$3
	sb	$5,6($8)
	lbu	$2,14($9)
	addiu	$9,$9,16
	addu	$4,$12,$2
	sb	$4,7($8)
	.set	noreorder
	.set	nomacro
	bgez	$10,$L5
	addu	$8,$8,$11
	.set	macro
	.set	reorder

	j	$31
	.end	add_pixels8_c
	.align	2
//	.ent	add_pixels4_c
//	.type	add_pixels4_c, @function

	.text
	.align	2
LEAF_ENTRY(add_pixels4_c)
	.frame	$sp,0,$31		# vars= 0, regs= 0/0, args= 0, gp= 0
	.mask	0x00000000,0
	.fmask	0x00000000,0
	move	$7,$4
	move	$8,$5
	move	$10,$6
	li	$9,3			# 0x3
$L15:
	lbu	$25,0($8)
	lbu	$24,0($7)
	lbu	$14,1($7)
	lbu	$12,2($7)
	addu	$15,$24,$25
	sb	$15,0($7)
	lbu	$6,2($8)
	lbu	$11,3($7)
	addiu	$9,$9,-1
	addu	$13,$14,$6
	sb	$13,1($7)
	lbu	$3,4($8)
	addu	$4,$12,$3
	sb	$4,2($7)
	lbu	$2,6($8)
	addiu	$8,$8,8
	addu	$5,$11,$2
	sb	$5,3($7)
	.set	noreorder
	.set	nomacro
	bgez	$9,$L15
	addu	$7,$7,$10
	.set	macro
	.set	reorder

	j	$31
	.end	add_pixels4_c
	.align	2
	.globl	put_h264_chroma_mc2_c
//	.ent	put_h264_chroma_mc2_c
//	.type	put_h264_chroma_mc2_c, @function

	.text
	.align	2
LEAF_ENTRY(put_h264_chroma_mc2_c)
	.frame	$sp,0,$31		# vars= 0, regs= 0/0, args= 0, gp= 0
	.mask	0x00000000,0
	.fmask	0x00000000,0
	lw	$3,16($sp)
	lw	$8,20($sp)
	li	$9,8			# 0x8
	subu	$2,$9,$3
	move	$11,$7
	subu	$7,$9,$8
	mul	$15,$3,$8
	move	$10,$4
	move	$9,$5
	mul	$14,$7,$3
	mul	$13,$2,$8
	.set	noreorder
	.set	nomacro
	blez	$11,$L29
	mul	$12,$2,$7
	.set	macro
	.set	reorder

$L24:
	addu	$5,$9,$6
	lbu	$8,1($9)
	lbu	$3,1($5)
	lbu	$25,0($9)
	lbu	$2,0($5)
	mul	$7,$8,$14
	addiu	$11,$11,-1
	mul	$8,$3,$15
	mul	$24,$25,$12
	mul	$4,$2,$13
	addu	$3,$24,$7
	addu	$25,$4,$8
	addu	$24,$25,$3
	addiu	$2,$24,32
	sra	$7,$2,6
	sb	$7,0($10)
	lbu	$8,2($9)
	lbu	$25,2($5)
	lbu	$3,1($9)
	lbu	$2,1($5)
	mul	$24,$8,$14
	move	$9,$5
	mul	$4,$3,$12
	mul	$5,$25,$15
	addu	$8,$4,$24
	mul	$7,$2,$13
	addu	$25,$7,$5
	addu	$24,$25,$8
	addiu	$5,$24,32
	sra	$4,$5,6
	sb	$4,1($10)
	.set	noreorder
	.set	nomacro
	bne	$11,$0,$L24
	addu	$10,$10,$6
	.set	macro
	.set	reorder

$L29:
	j	$31
	.end	put_h264_chroma_mc2_c
	.align	2
	.globl	put_h264_chroma_mc4_c
//	.ent	put_h264_chroma_mc4_c
//	.type	put_h264_chroma_mc4_c, @function

	.text
	.align	2
LEAF_ENTRY(put_h264_chroma_mc4_c)
	.frame	$sp,0,$31		# vars= 0, regs= 0/0, args= 0, gp= 0
	.mask	0x00000000,0
	.fmask	0x00000000,0
	lw	$3,16($sp)
	lw	$8,20($sp)
	li	$9,8			# 0x8
	subu	$2,$9,$3
	move	$15,$7
	subu	$7,$9,$8
	mul	$12,$3,$8
	move	$14,$4
	move	$24,$6
	move	$13,$5
	mul	$11,$7,$3
	mul	$10,$2,$8
	.set	noreorder
	.set	nomacro
	blez	$15,$L39
	mul	$9,$2,$7
	.set	macro
	.set	reorder

	addu	$8,$5,$6
$L34:
	lbu	$2,0($13)
	lbu	$4,1($13)
	lbu	$5,2($13)
	lbu	$6,3($13)
	lbu	$25,4($13)
//#APP
	mult $9,$2
	madd $11,$4
//#NO_APP
	lbu	$7,0($8)
//#APP
	madd $10,$7
//#NO_APP
	lbu	$3,1($8)
//#APP
	madd $12,$3
	mflo $2
//#NO_APP
	addiu	$7,$2,32
	sra	$3,$7,6
	sb	$3,0($14)
//#APP
	mult $9,$4
	madd $11,$5
//#NO_APP
	lbu	$2,1($8)
//#APP
	madd $10,$2
//#NO_APP
	lbu	$7,2($8)
//#APP
	madd $12,$7
	mflo $4
//#NO_APP
	addiu	$3,$4,32
	sra	$2,$3,6
	sb	$2,1($14)
//#APP
	mult $9,$5
	madd $11,$6
//#NO_APP
	lbu	$7,2($8)
//#APP
	madd $10,$7
//#NO_APP
	lbu	$5,3($8)
//#APP
	madd $12,$5
	mflo $4
//#NO_APP
	addiu	$3,$4,32
	sra	$2,$3,6
	sb	$2,2($14)
//#APP
	mult $9,$6
	madd $11,$25
//#NO_APP
	lbu	$7,3($8)
//#APP
	madd $10,$7
//#NO_APP
	lbu	$25,4($8)
//#APP
	madd $12,$25
	mflo $6
//#NO_APP
	addiu	$5,$6,32
	sra	$4,$5,6
	addiu	$15,$15,-1
	sb	$4,3($14)
	addu	$13,$13,$24
	addu	$14,$14,$24
	.set	noreorder
	.set	nomacro
	bne	$15,$0,$L34
	addu	$8,$8,$24
	.set	macro
	.set	reorder

$L39:
	j	$31
	.end	put_h264_chroma_mc4_c
	.align	2
	.globl	put_h264_chroma_mc8_c
//	.ent	put_h264_chroma_mc8_c
//	.type	put_h264_chroma_mc8_c, @function

	.text
	.align	2
LEAF_ENTRY(put_h264_chroma_mc8_c)
	.frame	$sp,16,$31		# vars= 0, regs= 3/0, args= 0, gp= 0
	.mask	0x00070000,-8
	.fmask	0x00000000,0
	addiu	$sp,$sp,-16
	lw	$3,32($sp)
	lw	$8,36($sp)
	li	$10,8			# 0x8
	subu	$2,$10,$3
	move	$9,$7
	subu	$7,$10,$8
	sw	$18,8($sp)
	sw	$16,0($sp)
	sw	$17,4($sp)
	mul	$24,$3,$8
	move	$16,$4
	move	$18,$6
	move	$25,$5
	mul	$15,$7,$3
	mul	$14,$2,$8
	.set	noreorder
	.set	nomacro
	blez	$9,$L46
	mul	$13,$2,$7
	.set	macro
	.set	reorder

	move	$17,$9
	addu	$12,$5,$6
$L44:
	lbu	$3,0($25)
	lbu	$4,1($25)
	lbu	$5,2($25)
	lbu	$6,3($25)
	lbu	$7,4($25)
	lbu	$8,5($25)
	lbu	$9,6($25)
	lbu	$10,7($25)
	lbu	$11,8($25)
//#APP
	mult $13,$3
	madd $15,$4
//#NO_APP
	lbu	$2,0($12)
//#APP
	madd $14,$2
//#NO_APP
	lbu	$3,1($12)
//#APP
	madd $24,$3
	mflo $2
//#NO_APP
	addiu	$3,$2,32
	sra	$2,$3,6
	sb	$2,0($16)
//#APP
	mult $13,$4
	madd $15,$5
//#NO_APP
	lbu	$4,1($12)
//#APP
	madd $14,$4
//#NO_APP
	lbu	$3,2($12)
//#APP
	madd $24,$3
	mflo $2
//#NO_APP
	addiu	$4,$2,32
	sra	$3,$4,6
	sb	$3,1($16)
//#APP
	mult $13,$5
	madd $15,$6
//#NO_APP
	lbu	$2,2($12)
//#APP
	madd $14,$2
//#NO_APP
	lbu	$5,3($12)
//#APP
	madd $24,$5
	mflo $4
//#NO_APP
	addiu	$3,$4,32
	sra	$2,$3,6
	sb	$2,2($16)
//#APP
	mult $13,$6
	madd $15,$7
//#NO_APP
	lbu	$6,3($12)
//#APP
	madd $14,$6
//#NO_APP
	lbu	$5,4($12)
//#APP
	madd $24,$5
	mflo $4
//#NO_APP
	addiu	$3,$4,32
	sra	$2,$3,6
	sb	$2,3($16)
//#APP
	mult $13,$7
	madd $15,$8
//#NO_APP
	lbu	$7,4($12)
//#APP
	madd $14,$7
//#NO_APP
	lbu	$6,5($12)
//#APP
	madd $24,$6
	mflo $5
//#NO_APP
	addiu	$4,$5,32
	sra	$3,$4,6
	sb	$3,4($16)
//#APP
	mult $13,$8
	madd $15,$9
//#NO_APP
	lbu	$8,5($12)
//#APP
	madd $14,$8
//#NO_APP
	lbu	$2,6($12)
//#APP
	madd $24,$2
	mflo $7
//#NO_APP
	addiu	$6,$7,32
	sra	$5,$6,6
	sb	$5,5($16)
//#APP
	mult $13,$9
	madd $15,$10
//#NO_APP
	lbu	$4,6($12)
//#APP
	madd $14,$4
//#NO_APP
	lbu	$3,7($12)
//#APP
	madd $24,$3
	mflo $8
//#NO_APP
	addiu	$2,$8,32
	sra	$7,$2,6
	sb	$7,6($16)
//#APP
	mult $13,$10
	madd $15,$11
//#NO_APP
	lbu	$11,7($12)
//#APP
	madd $14,$11
//#NO_APP
	lbu	$9,8($12)
//#APP
	madd $24,$9
	mflo $6
//#NO_APP
	addiu	$5,$6,32
	sra	$4,$5,6
	addiu	$17,$17,-1
	sb	$4,7($16)
	addu	$25,$25,$18
	addu	$16,$16,$18
	.set	noreorder
	.set	nomacro
	bne	$17,$0,$L44
	addu	$12,$12,$18
	.set	macro
	.set	reorder

$L46:
	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	put_h264_chroma_mc8_c
	.align	2
	.globl	avg_h264_chroma_mc2_c
//	.ent	avg_h264_chroma_mc2_c
//	.type	avg_h264_chroma_mc2_c, @function

	.text
	.align	2
LEAF_ENTRY(avg_h264_chroma_mc2_c)
	.frame	$sp,0,$31		# vars= 0, regs= 0/0, args= 0, gp= 0
	.mask	0x00000000,0
	.fmask	0x00000000,0
	lw	$3,16($sp)
	lw	$8,20($sp)
	li	$10,8			# 0x8
	subu	$2,$10,$3
	move	$9,$7
	subu	$7,$10,$8
	mul	$15,$3,$8
	move	$11,$4
	move	$10,$5
	move	$24,$6
	mul	$14,$7,$3
	mul	$13,$2,$8
	.set	noreorder
	.set	nomacro
	blez	$9,$L58
	mul	$12,$2,$7
	.set	macro
	.set	reorder

	move	$7,$9
$L53:
	addu	$6,$10,$24
	lbu	$5,1($10)
	lbu	$9,1($6)
	lbu	$4,0($10)
	mul	$8,$5,$14
	lbu	$2,0($6)
	lbu	$3,0($11)
	lbu	$5,1($11)
	addiu	$7,$7,-1
	mul	$25,$9,$15
	mul	$9,$4,$12
	addu	$4,$9,$8

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -