fldv1.s 8.67 KB
/****************************************************************
  This program tests the instruction: ldv
 ****************************************************************/

#include "suregre.h"

.base 0x04001000

	.data	0x04000000
	.word	0x01820384
	.word	0x85068708
	.word	0x098A0B8C
	.word	0x8D0E8F10
	.word	0x11921394
	.word	0x95169718
	.word	0x199A1B9C
	.word	0x9D1E9F20
	.word	0x21A223A4
	.word	0xA526A728
	.word	0x29AA2BAC
	.word	0xAD2EAF30
	.word	0x31B233B4
	.word	0xB536B738
	.word	0x39BA3BBC
	.word	0xBD3EBF40
	.word	0x41C243C4
	.word	0xC546C748
	.word	0x49CA4BCC
	.word	0xCD4ECF50
	.word	0x51D253D4
	.word	0xD556D758
	.word	0x59DA5BDC
	.word	0xDD5EDF60
	.word	0x61E263E4
	.word	0xE566E768
	.word	0x69EA6BEC
	.word	0xED6EEF70
	.word	0x71F273F4
	.word	0xF576F778
	.word	0x79FA7BFC
	.word	0xFD7E0080

	LI(r0 , 0xFFFF, 0xFFFF);
	LI(r1 , 0x0101, 0x0101);
	LI(r2 , 0x0202, 0x0202);
	LI(r3 , 0x0303, 0x0303);
	LI(r4 , 0x0404, 0x0404);
	LI(r5 , 0x0505, 0x0505);
	LI(r6 , 0x0606, 0x0606);
	LI(r7 , 0x0707, 0x0707);
	LI(r8 , 0x0808, 0x0808);
	LI(r9 , 0x0909, 0x0909);
	LI(r10, 0x0A0A, 0x0A0A);
	LI(r11, 0x0B0B, 0x0B0B);
	LI(r12, 0x0C0C, 0x0C0C);
	LI(r13, 0x0D0D, 0x0D0D);
	LI(r14, 0x0E0E, 0x0E0E);
	LI(r15, 0x0F0F, 0x0F0F);
	LI(r16, 0x1010, 0x1010);
	LI(r17, 0x1111, 0x1111);
	LI(r18, 0x1212, 0x1212);
	LI(r19, 0x1313, 0x1313);
	LI(r20, 0x1414, 0x1414);
	LI(r21, 0x1515, 0x1515);
	LI(r22, 0x1616, 0x1616);
	LI(r23, 0x1717, 0x1717);
	LI(r24, 0x1818, 0x1818);
	LI(r25, 0x1919, 0x1919);
	LI(r26, 0x1A1A, 0x1A1A);
	LI(r27, 0x1B1B, 0x1B1B);
	LI(r28, 0x1C1C, 0x1C1C);
	LI(r29, 0x1D1D, 0x1D1D);
	LI(r30, 0x1E1E, 0x1E1E);
	LI(r31, 0x1F1F, 0x1F1F);
	lqv	v0[0], 0 (r0);
	vxor	v0 , v0, v0
	vxor	v1 , v0, v0
	vxor	v2 , v0, v0
	vxor	v3 , v0, v0
	vxor	v4 , v0, v0
	vxor	v5 , v0, v0
	vxor	v6 , v0, v0
	vxor	v7 , v0, v0
	vxor	v8 , v0, v0
	vxor	v9 , v0, v0
	vxor	v10, v0, v0
	vxor	v11, v0, v0
	vxor	v12, v0, v0
	vxor	v13, v0, v0
	vxor	v14, v0, v0
	vxor	v15, v0, v0
	vxor	v16, v0, v0
	vxor	v17, v0, v0
	vxor	v18, v0, v0
	vxor	v19, v0, v0
	vxor	v20, v0, v0
	vxor	v21, v0, v0
	vxor	v22, v0, v0
	vxor	v23, v0, v0
	vxor	v24, v0, v0
	vxor	v25, v0, v0
	vxor	v26, v0, v0
	vxor	v27, v0, v0
	vxor	v28, v0, v0
	vxor	v29, v0, v0
	vxor	v30, v0, v0
	vxor	v31, v0, v0

	.word	0x41C243C4
	.word	0xC546C748
	.word	0xffffffff
	.word	0xffffffff

	ChkVldTVf( 1,ldv,r3 ,r4 ,r5 ,r2 ,v1 ,v0 ,0x0400,0x0080,0x0400,0x0040,0x0000,e0 ,0x00FF)

	.word	0xffffffff
	.word	0xffffffff
	.word	0x49CA4BCC
	.word	0xCD4ECF50

	ChkVldTVf( 2,ldv,r4 ,r5 ,r6 ,r3 ,v18,v1 ,0x0400,0x0090,0x0400,0x0040,0x0008,e8 ,0x00FF)

	.word	0x39BA3BBC
	.word	0xBD3EBF40
	.word	0xffffffff
	.word	0xffffffff

	ChkVldTVf( 3,ldv,r5 ,r6 ,r7 ,r4 ,v19,v18,0x0400,0x00A0,0x0400,0x0040,0xFFF8,e0 ,0x00FF)

	.word	0xffffffff
	.word	0xffffffff
	.word	0x79FA7BFC
	.word	0xFD7E0080

	ChkVldTVf( 4,ldv,r6 ,r7 ,r8 ,r5 ,v20,v19,0x0400,0x00B0,0x0400,0x0040,0x0038,e8 ,0x00FF)

	.word	0x01820384
	.word	0x85068708
	.word	0xffffffff
	.word	0xffffffff

	ChkVldTVf( 5,ldv,r7 ,r8 ,r9 ,r6 ,v21,v20,0x0400,0x00C0,0x0400,0x0040,0xFFC0,e0 ,0x00FF)

	.word	0xffffffff
	.word	0xffffffff
	.word	0xC243C4C5
	.word	0x46C74849

	ChkVldTVf( 6,ldv,r8 ,r9 ,r10,r7 ,v22,v21,0x0400,0x00D0,0x0400,0x0041,0x0000,e8 ,0x00FF)

	.word	0xCA4BCCCD
	.word	0x4ECF5051
	.word	0xffffffff
	.word	0xffffffff

	ChkVldTVf( 7,ldv,r9 ,r10,r11,r8 ,v23,v22,0x0400,0x00E0,0x0400,0x0041,0x0008,e0 ,0x00FF)

	.word	0xffffffff
	.word	0xffffffff
	.word	0xBA3BBCBD
	.word	0x3EBF4041

	ChkVldTVf( 8,ldv,r10,r11,r12,r9 ,v24,v23,0x0400,0x00F0,0x0400,0x0041,0xFFF8,e8 ,0x00FF)

	.word	0xF273F4F5
	.word	0x76F77879
	.word	0xffffffff
	.word	0xffffffff

	ChkVldTVf( 9,ldv,r11,r12,r13,r10,v25,v24,0x0400,0x0100,0x0400,0x0041,0x0030,e0 ,0x00FF)

	.word	0xffffffff
	.word	0xffffffff
	.word	0x82038485
	.word	0x06870809

	ChkVldTVf(10,ldv,r12,r13,r14,r11,v26,v25,0x0400,0x0110,0x0400,0x0041,0xFFC0,e8 ,0x00FF)

	.word	0x43C4C546
	.word	0xC74849CA
	.word	0xffffffff
	.word	0xffffffff

	ChkVldTVf(11,ldv,r13,r14,r15,r12,v27,v26,0x0400,0x0120,0x0400,0x0042,0x0000,e0 ,0x00FF)

	.word	0xffffffff
	.word	0xffffffff
	.word	0x4BCCCD4E
	.word	0xCF5051D2

	ChkVldTVf(12,ldv,r14,r15,r16,r13,v28,v27,0x0400,0x0130,0x0400,0x0042,0x0008,e8 ,0x00FF)

	.word	0x3BBCBD3E
	.word	0xBF4041C2
	.word	0xffffffff
	.word	0xffffffff

	ChkVldTVf(13,ldv,r15,r16,r17,r14,v29,v28,0x0400,0x0140,0x0400,0x0042,0xFFF8,e0 ,0x00FF)

	.word	0xffffffff
	.word	0xffffffff
	.word	0x73F4F576
	.word	0xF77879FA

	ChkVldTVf(14,ldv,r16,r17,r18,r15,v30,v29,0x0400,0x0150,0x0400,0x0042,0x0030,e8 ,0x00FF)

	.word	0x03848506
	.word	0x8708098A
	.word	0xffffffff
	.word	0xffffffff

	ChkVldTVf(15,ldv,r17,r18,r19,r16,v31,v30,0x0400,0x0160,0x0400,0x0042,0xFFC0,e0 ,0x00FF)

	.word	0xffffffff
	.word	0xffffffff
	.word	0xC4C546C7
	.word	0x4849CA4B

	ChkVldTVf(16,ldv,r18,r19,r20,r17,v0 ,v31,0x0400,0x0170,0x0400,0x0043,0x0000,e8 ,0x00FF)

	.word	0xCCCD4ECF
	.word	0x5051D253
	.word	0xffffffff
	.word	0xffffffff

	ChkVldTVf(17,ldv,r19,r20,r21,r18,v1 ,v0 ,0x0400,0x0180,0x0400,0x0043,0x0008,e0 ,0x00FF)

	.word	0xffffffff
	.word	0xffffffff
	.word	0xBCBD3EBF
	.word	0x4041C243

	ChkVldTVf(18,ldv,r20,r21,r22,r19,v2 ,v1 ,0x0400,0x0190,0x0400,0x0043,0xFFF8,e8 ,0x00FF)

	.word	0xF4F576F7
	.word	0x7879FA7B
	.word	0xffffffff
	.word	0xffffffff

	ChkVldTVf(19,ldv,r21,r22,r23,r20,v3 ,v2 ,0x0400,0x01A0,0x0400,0x0043,0x0030,e0 ,0x00FF)

	.word	0xffffffff
	.word	0xffffffff
	.word	0x84850687
	.word	0x08098A0B

	ChkVldTVf(20,ldv,r22,r23,r24,r21,v4 ,v3 ,0x0400,0x01B0,0x0400,0x0043,0xFFC0,e8 ,0x00FF)

	.word	0xC546C748
	.word	0x49CA4BCC
	.word	0xffffffff
	.word	0xffffffff

	ChkVldTVf(21,ldv,r23,r24,r25,r22,v5 ,v4 ,0x0400,0x01C0,0x0400,0x0044,0x0000,e0 ,0x00FF)

	.word	0xffffffff
	.word	0xffffffff
	.word	0xCD4ECF50
	.word	0x51D253D4

	ChkVldTVf(22,ldv,r24,r25,r26,r23,v6 ,v5 ,0x0400,0x01D0,0x0400,0x0044,0x0008,e8 ,0x00FF)

	.word	0xBD3EBF40
	.word	0x41C243C4
	.word	0xffffffff
	.word	0xffffffff

	ChkVldTVf(23,ldv,r25,r26,r27,r24,v7 ,v6 ,0x0400,0x01E0,0x0400,0x0044,0xFFF8,e0 ,0x00FF)

	.word	0xffffffff
	.word	0xffffffff
	.word	0xF576F778
	.word	0x79FA7BFC

	ChkVldTVf(24,ldv,r26,r27,r28,r25,v8 ,v7 ,0x0400,0x01F0,0x0400,0x0044,0x0030,e8 ,0x00FF)

	.word	0x85068708
	.word	0x098A0B8C
	.word	0xffffffff
	.word	0xffffffff

	ChkVldTVf(25,ldv,r27,r28,r29,r26,v9 ,v8 ,0x0400,0x0200,0x0400,0x0044,0xFFC0,e0 ,0x00FF)

	.word	0xffffffff
	.word	0xffffffff
	.word	0x46C74849
	.word	0xCA4BCCCD

	ChkVldTVf(26,ldv,r28,r29,r30,r27,v10,v9 ,0x0400,0x0210,0x0400,0x0045,0x0000,e8 ,0x00FF)

	.word	0x4ECF5051
	.word	0xD253D4D5
	.word	0xffffffff
	.word	0xffffffff

	ChkVldTVf(27,ldv,r29,r30,r2 ,r28,v11,v10,0x0400,0x0220,0x0400,0x0045,0x0008,e0 ,0x00FF)

	.word	0xffffffff
	.word	0xffffffff
	.word	0x3EBF4041
	.word	0xC243C4C5

	ChkVldTVf(28,ldv,r30,r2 ,r3 ,r29,v12,v11,0x0400,0x0230,0x0400,0x0045,0xFFF8,e8 ,0x00FF)

	.word	0x76F77879
	.word	0xFA7BFCFD
	.word	0xffffffff
	.word	0xffffffff

	ChkVldTVf(29,ldv,r2 ,r3 ,r4 ,r30,v13,v12,0x0400,0x0240,0x0400,0x0045,0x0030,e0 ,0x00FF)

	.word	0xffffffff
	.word	0xffffffff
	.word	0x06870809
	.word	0x8A0B8C8D

	ChkVldTVf(30,ldv,r3 ,r4 ,r5 ,r2 ,v14,v13,0x0400,0x0250,0x0400,0x0045,0xFFC0,e8 ,0x00FF)

	.word	0xC74849CA
	.word	0x4BCCCD4E
	.word	0xffffffff
	.word	0xffffffff

	ChkVldTVf(31,ldv,r4 ,r5 ,r6 ,r3 ,v15,v14,0x0400,0x0260,0x0400,0x0046,0x0000,e0 ,0x00FF)

	.word	0xffffffff
	.word	0xffffffff
	.word	0xCF5051D2
	.word	0x53D4D556

	ChkVldTVf(32,ldv,r5 ,r6 ,r7 ,r4 ,v16,v15,0x0400,0x0270,0x0400,0x0046,0x0008,e8 ,0x00FF)

	.word	0xBF4041C2
	.word	0x43C4C546
	.word	0xffffffff
	.word	0xffffffff

	ChkVldTVf(33,ldv,r6 ,r7 ,r8 ,r5 ,v17,v16,0x0400,0x0280,0x0400,0x0046,0xFFF8,e0 ,0x00FF)

	.word	0xffffffff
	.word	0xffffffff
	.word	0xF77879FA
	.word	0x7BFCFD7E

	ChkVldTVf(34,ldv,r7 ,r8 ,r9 ,r6 ,v18,v17,0x0400,0x0290,0x0400,0x0046,0x0030,e8 ,0x00FF)

	.word	0x8708098A
	.word	0x0B8C8D0E
	.word	0xffffffff
	.word	0xffffffff

	ChkVldTVf(35,ldv,r8 ,r9 ,r10,r7 ,v19,v18,0x0400,0x02A0,0x0400,0x0046,0xFFC0,e0 ,0x00FF)

	.word	0xffffffff
	.word	0xffffffff
	.word	0x4849CA4B
	.word	0xCCCD4ECF

	ChkVldTVf(36,ldv,r9 ,r10,r11,r8 ,v20,v19,0x0400,0x02B0,0x0400,0x0047,0x0000,e8 ,0x00FF)

	.word	0x5051D253
	.word	0xD4D556D7
	.word	0xffffffff
	.word	0xffffffff

	ChkVldTVf(37,ldv,r10,r11,r12,r9 ,v21,v20,0x0400,0x02C0,0x0400,0x0047,0x0008,e0 ,0x00FF)

	.word	0xffffffff
	.word	0xffffffff
	.word	0x4041C243
	.word	0xC4C546C7

	ChkVldTVf(38,ldv,r11,r12,r13,r10,v22,v21,0x0400,0x02D0,0x0400,0x0047,0xFFF8,e8 ,0x00FF)

	.word	0x7879FA7B
	.word	0xFCFD7E00
	.word	0xffffffff
	.word	0xffffffff

	ChkVldTVf(39,ldv,r12,r13,r14,r11,v23,v22,0x0400,0x02E0,0x0400,0x0047,0x0030,e0 ,0x00FF)

	.word	0xffffffff
	.word	0xffffffff
	.word	0x08098A0B
	.word	0x8C8D0E8F

	ChkVldTVf(40,ldv,r13,r14,r15,r12,v24,v23,0x0400,0x02F0,0x0400,0x0047,0xFFC0,e8 ,0x00FF)

	ori	r1, r0, 0xFEED;

Fail:   
        sw      r1, 0(r0)
        nop
        nop
        nop
        nop
        break;