diff options
Diffstat (limited to 'tests/t_3206x')
| -rw-r--r-- | tests/t_3206x/asflags | 0 | ||||
| -rw-r--r-- | tests/t_3206x/t_3206x.asm | 241 | ||||
| -rw-r--r-- | tests/t_3206x/t_3206x.doc | 5 | ||||
| -rw-r--r-- | tests/t_3206x/t_3206x.ori | bin | 0 -> 744 bytes | 
4 files changed, 246 insertions, 0 deletions
| diff --git a/tests/t_3206x/asflags b/tests/t_3206x/asflags new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/tests/t_3206x/asflags diff --git a/tests/t_3206x/t_3206x.asm b/tests/t_3206x/t_3206x.asm new file mode 100644 index 0000000..5c5804d --- /dev/null +++ b/tests/t_3206x/t_3206x.asm @@ -0,0 +1,241 @@ +		cpu	32060 + +                page	0 + +mv		macro	src,dest +		add.ATTRIBUTE 0,src,dest +                endm + +neg		macro	src,dest +		sub.ATTRIBUTE 0,src,dest +                endm + +not		macro	src,dest +		xor.ATTRIBUTE -1,src,dest +                endm + +                not	a0,a1 + +zero		macro	dest +                xor.ATTRIBUTE dst,dst,dst +                endm + +                mv	a1,a3 +                mv.l2	a1,b3 + +        	nop +||      	nop +||      	nop +        	nop +                nop + +	[b0]    nop +|| 	[!b0]	nop + +		idle + +                nop +                nop	7 + +	abs	a4,a7 +        abs.l1	a4,a7 +        abs	b4,a7 +        abs.l1	b4,a7 +	abs.l1x b4,a7 +        abs	b3:b2,b11:b10 +        abs	a7:a6,b11:b10 + +        add	a1,a3,a7:a6 +        add	a1,b3,a7:a6 +        add	b1,a3,a7:a6 +	add	a7,a5:a4,a13:a12 +        add     b7,a5:a4,a13:a12 +	add	a5:a4,a7,a13:a12 +        add     a5:a4,b7,a13:a12 +        add	b9:b8,-3,b15:b14 +        add	-3,b9:b8,b15:b14 + +	addab.d1  a4,a2,a4 +        addah.d1  a4,a2,a4 +        addaw.d2  b4,2,b4 +	subab.d1  a4,a2,a4 +        subah.d1  a4,a2,a4 +        subaw.d2  b4,2,b4 + +        addk	15401,a1 +        addk.s1 15401,a1 + +        add2	a1,b1,a2 +        sub2	b1,a0,b2 + +        clr	a1,4,19,a2 +        clr	b1,b3,b2 + +        cmpeq.l2 a1,b1,b2 +        cmpeq.l1 -9,a1,a2 +        cmpeq.l2 a1,b3:b2,b1 +        cmpgt.l1 a1,b2,a2 +        cmpgt.l1 a1,b1,a2 +        cmpgt.l1 8,a1,a2 +        cmpgt.l1 a1,b1,a2 +        cmpgtu.l1 a1,a2,a3 +        cmpgtu.l1 0ah,a1,a2 +        cmpgtu.l1 0eh,a3:a2,a4 +        cmplt.l1 a1,a2,a3 +        cmplt.l1 9,a1,a2 +        cmpltu.l1 a1,a2,a3 +        cmpltu.l1 14,a1,a2 +        cmpltu.l1 a1,a5:a4,a2 + +        ext.s1	a1,10,19,a2 +        ext.s1	a1,a2,a3 +        extu.s1	a1,10,19,a2 +        extu.s1 a1,a2,a3 + +        ldw.d1	*a10,a1 +        ldb.d1	*-a5[4],a7 +        ldh.d1	*++a4[a1],a8 +        ldw.d1	*a4++[1],a6 +        ldw.d1	*++a4(4),a6 +        ldb.d2	*+b14[36],b1 + +        lmbd	a1,a2,a3 + +        mpy.m1	a1,a2,a3 +        mpyu.m1 a1,a2,a3 +        mpyus.m1 a1,a2,a3 +        mpy.m1 13,a1,a2 +        mpysu.m1 13,a1,a2 +        mpyh.m1 a1,a2,a3 +        mpyhu.m1 a1,a2,a3 +        mpyhsu.m1 a1,a2,a3 +	mpyhl.m1 a1,a2,a3 +        mpylh.m1 a1,a2,a3 + +	mvc.s2	a1,amr +        mvc	istp,b4 + +        mvk.s1	293,a1 +        mvk.s2	125h,b1 +        mvk.s1	0ff12h,a1 +        mvkh.s1	0a329123h,a1 +        mvklh	7a8h,a1 + +        norm	a1,a2 +        norm	a1:a0,a2 + +        sadd.l1	a1,a2,a3 +        sadd.l1 b2,a5:a4,a7:a6 + +        sat.l1	a1:a0,a2 +        sat.l2	b1:b0,b5 + +        set.s1	a0,7,21,a1 +        set.s2	b0,b1,b2 + +        shl.s1	a0,4,a1 +        shl.s2	b0,b1,b2 +        shl.s2	b1:b0,b2,b3:b2 + +        shr.s1	a0,8,a1 +        shr.s2	b0,b1,b2 +        shr.s2	b1:b0,b2,b3:b2 + +        shru.s1	a0,8,a1 + +        smpy.m1	a1,a2,a3 +        smpyhl.m1 a1,a2,a3 +        smpylh.m1 a1,a2,a3 + +        sshl.s1	a0,2,a1 +        sshl.s1	a0,a1,a2 + +        ssub.l2	b1,b2,b3 +        ssub.l1	a0,a1,a2 + +        stb.d1	a1,*a10 +        sth.d1	a1,*+a10(4) +        stw.d1	a1,*++a10[1] +        sth.d1	a1,*a10--[a11] +        stb.d2	b1,*+b14[40] + +        align   32 +        mvk.s1	2c80h,a0 +||      mvk.s2	0200h,b0 +	mvkh.s1 01880000h,a0 +||	mvkh.s2 00000000h,b0 +	mvc.s2	a0,pdata_o +        stp.s2	b0 +        nop	4 +        mpy.m1	a1,a2,a3 + +        sub.l1	a1,a2,a3 +        subu.l1	a1,a2,a5:a4 +        subc.l1	a0,a1,a0 + +        align   32 +        ifdef error +        add.s1  a0,a1,a2 +||      shr.s1  a3,15,a4 +        endif +        add.l1  a0,a1,a2 +||      shr.s1  a3,15,a4 + +        align   32 +        ifdef   error +        add.l1x a0,b1,a1 +||      mpy.m1x a4,b4,a5 +        endif +        add.l1x a0,b1,a1 +||      mpy.m2x a4,b4,b2 + +        align   32 +        ifdef   error +        ldw.d1  *a0,a1 +||      ldw.d1  *a2,b2 +        endif +        ldw.d1  *a0,a1 +||      ldw.d2  *b0,b2 + +        align   32 +        ifdef   error +        ldw.d1  *a4,a5 +||      stw.d2  a6,*b4 +        endif +        ldw.d1  *a4,b4 +||      stw.d2  a6,*b4 + +        align   32 +        ifdef   error +        add.l1  a5:a4,a1,a3:a2 +||      shl.s1  a8,a9,a7:a6 +        endif +        add.l1  a5:a4,a1,a3:a2 +||      shl.s2  b8,b9,b7:b6 + +        align   32 +        ifdef   error +        add.l1  a5:a4,a1,a3:a2 +||      stw.d1  a8,*a9 +        endif +        add.l1  a4,a1,a3:a2 +||      stw.d1  a8,*a9 + +        align   32 +        ifdef   error +        mpy.m1  a1,a1,a4 +||      add.l1  a1,a1,a5 +||      sub.d1  a1,a2,a3 +        endif +        mpy.m1  a1,a1,a4 +|| [a1] add.l1  a0,a1,a5 +||      sub.d1  a1,a2,a3 + +        align   32 +        ifdef   error +        add.l2  b5,b6,b7 +||      sub.s2  b8,b9,b7 +        endif +[!b0]   add.l2  b5,b6,b7 +|| [b0] sub.s2  b8,b9,b7 + diff --git a/tests/t_3206x/t_3206x.doc b/tests/t_3206x/t_3206x.doc new file mode 100644 index 0000000..ddfa640 --- /dev/null +++ b/tests/t_3206x/t_3206x.doc @@ -0,0 +1,5 @@ ++------------------------- Test Application 3206x ---------------------------+ +|                                                                            | +|      This is a (synthetic) test of the TMS320C6x instruction set           | +|                                                                            | ++----------------------------------------------------------------------------+ diff --git a/tests/t_3206x/t_3206x.ori b/tests/t_3206x/t_3206x.oriBinary files differ new file mode 100644 index 0000000..d8cf606 --- /dev/null +++ b/tests/t_3206x/t_3206x.ori | 
