sfv2.s 7.63 KB
/****************************************************************
  This program tests the instruction: sfv
 ****************************************************************/

#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	0x19D72E7A
	.word	0x503544A4
	.word	0x31C25C41
	.word	0x5454070C

	.word	0x416343C4
	.word	0xC5B8C748
	.word	0x49A84BCC
	.word	0xCD0ECF50
	.word	0x51D253D4
	.word	0xD556D758
	.word	0x59DA5BDC
	.word	0xDD5EDF60

	ChkVst(26,sfv,r3 ,r4 ,r5 ,r2 ,v1 ,v19,v20,v0 ,0x0400,0x0080,0x0400,0x0041,0x0400,0x0040,0x0000,e8 ,0x00FF)

	.word	0x4FC50EE9
	.word	0x499C210E
	.word	0x140F70EB
	.word	0x7B5C5E64

	.word	0x519F53D4
	.word	0xD51DD758
	.word	0x59935BDC
	.word	0xDD42DF60
	.word	0x61E263E4
	.word	0xE566E768
	.word	0x69EA6BEC
	.word	0xED6EEF70

	ChkVst(27,sfv,r4 ,r5 ,r6 ,r3 ,v19,v20,v21,v1 ,0x0400,0x00B0,0x0400,0x0041,0x0400,0x0050,0x0010,e0 ,0x00FF)

	.word	0x012B50BF
	.word	0x586F735A
	.word	0x250D42F7
	.word	0x0126524C

	.word	0x314A33B4
	.word	0xB585B738
	.word	0x39023BBC
	.word	0xBDA4BF40
	.word	0x416343C4
	.word	0xC5B8C748
	.word	0x49A84BCC
	.word	0xCD0ECF50

	ChkVst(28,sfv,r5 ,r6 ,r7 ,r4 ,v20,v21,v22,v19,0x0400,0x00E0,0x0400,0x0041,0x0400,0x0030,0xFFF0,e8 ,0x00FF)

	.word	0x46DD4A18
	.word	0x47F45CE3
	.word	0x2587203B
	.word	0x10DC6D0E

	.word	0x61E263E4
	.word	0xE566E768
	.word	0x69EA6BEC
	.word	0xED6EEF70
	.word	0x718D73F4
	.word	0xF594F778
	.word	0x798F7BFC
	.word	0xFDB90080

	ChkVst(29,sfv,r6 ,r7 ,r8 ,r5 ,v21,v22,v23,v20,0x0400,0x0110,0x0400,0x0041,0x0400,0x0060,0x0030,e0 ,0x00FF)

	.word	0x12FF7E68
	.word	0x3B9B71C2
	.word	0x78557DAD
	.word	0x04951B72

	.word	0x01F00384
	.word	0x85FB8708
	.word	0x09090B8C
	.word	0x8D368F10
	.word	0x11921394
	.word	0x95169718
	.word	0x199A1B9C
	.word	0x9D1E9F20

	ChkVst(30,sfv,r7 ,r8 ,r9 ,r6 ,v22,v23,v24,v21,0x0400,0x0140,0x0400,0x0041,0x0400,0x0000,0xFFC0,e8 ,0x00FF)

	.word	0x0E7C6E02
	.word	0x0880544D
	.word	0x57DA3EDD
	.word	0x56D2003B

	.word	0x41631CC4
	.word	0xC5B8DC48
	.word	0x49A811CC
	.word	0xCD0EA850
	.word	0x519F53D4
	.word	0xD51DD758
	.word	0x59935BDC
	.word	0xDD42DF60

	ChkVst(31,sfv,r8 ,r9 ,r10,r7 ,v23,v24,v25,v22,0x0400,0x0170,0x0400,0x0042,0x0400,0x0040,0x0000,e0 ,0x00FF)

	.word	0x268F5593
	.word	0x3EEB4095
	.word	0x3B856D75
	.word	0x440237A6

	.word	0x519F77D4
	.word	0xD51DDA58
	.word	0x599388DC
	.word	0xDD426F60
	.word	0x61E263E4
	.word	0xE566E768
	.word	0x69EA6BEC
	.word	0xED6EEF70

	ChkVst(32,sfv,r9 ,r10,r11,r8 ,v24,v25,v26,v23,0x0400,0x01A0,0x0400,0x0042,0x0400,0x0050,0x0010,e8 ,0x00FF)

	.word	0x4A3C5DA6
	.word	0x63D107E6
	.word	0x6D5260BE
	.word	0x1C000AF0

	.word	0x314A94B4
	.word	0xB585BB38
	.word	0x3902C7BC
	.word	0xBDA40F40
	.word	0x41631CC4
	.word	0xC5B8DC48
	.word	0x49A811CC
	.word	0xCD0EA850

	ChkVst(33,sfv,r10,r11,r12,r9 ,v25,v26,v27,v24,0x0400,0x01D0,0x0400,0x0042,0x0400,0x0030,0xFFF0,e0 ,0x00FF)

	.word	0x57D53A20
	.word	0x5A537C48
	.word	0x4F49551B
	.word	0x439213CF

	.word	0x61E263E4
	.word	0xE566E768
	.word	0x69EA6BEC
	.word	0xED6EEF70
	.word	0x718D9EF4
	.word	0xF594AA78
	.word	0x798F87FC
	.word	0xFDB92780

	ChkVst(34,sfv,r11,r12,r13,r10,v26,v27,v28,v25,0x0400,0x0200,0x0400,0x0042,0x0400,0x0060,0x0030,e8 ,0x00FF)

	.word	0x3A7839C3
	.word	0x7D3C4C02
	.word	0x50FC738D
	.word	0x65EA4FF6

	.word	0x01F07484
	.word	0x85FB7308
	.word	0x0909FA8C
	.word	0x8D369810
	.word	0x11921394
	.word	0x95169718
	.word	0x199A1B9C
	.word	0x9D1E9F20

	ChkVst(35,sfv,r12,r13,r14,r11,v27,v28,v29,v26,0x0400,0x0230,0x0400,0x0042,0x0400,0x0000,0xFFC0,e0 ,0x00FF)

	.word	0x378D45AD
	.word	0x68844D14
	.word	0x150B4930
	.word	0x56272494

	.word	0x41631C2A
	.word	0xC5B8DC92
	.word	0x49A811AC
	.word	0xCD0EA849
	.word	0x519F77D4
	.word	0xD51DDA58
	.word	0x599388DC
	.word	0xDD426F60

	ChkVst(36,sfv,r13,r14,r15,r12,v28,v29,v30,v27,0x0400,0x0260,0x0400,0x0043,0x0400,0x0040,0x0000,e8 ,0x00FF)

	.word	0x6C4A50D8
	.word	0x72D238BB
	.word	0x46A12EBB
	.word	0x20D351D3

	.word	0x519F77D8
	.word	0xD51DDAA1
	.word	0x599388E5
	.word	0xDD426F71
	.word	0x61E263E4
	.word	0xE566E768
	.word	0x69EA6BEC
	.word	0xED6EEF70

	ChkVst(37,sfv,r14,r15,r16,r13,v29,v30,v31,v28,0x0400,0x0290,0x0400,0x0043,0x0400,0x0050,0x0010,e0 ,0x00FF)

	.word	0x7B31379A
	.word	0x56F456EF
	.word	0x1EF62002
	.word	0x4D64565B

	.word	0x314A943D
	.word	0xB585BB40
	.word	0x3902C79A
	.word	0xBDA40FAC
	.word	0x41631C2A
	.word	0xC5B8DC92
	.word	0x49A811AC
	.word	0xCD0EA849

	ChkVst(38,sfv,r15,r16,r17,r14,v30,v31,v0 ,v29,0x0400,0x02C0,0x0400,0x0043,0x0400,0x0030,0xFFF0,e8 ,0x00FF)

	.word	0x698F0F25
	.word	0x0D6719E5
	.word	0x1ACD0376
	.word	0x4FBD42CF

	.word	0x61E263E4
	.word	0xE566E768
	.word	0x69EA6BEC
	.word	0xED6EEF70
	.word	0x718D9ED3
	.word	0xF594AA1E
	.word	0x798F871A
	.word	0xFDB92733

	ChkVst(39,sfv,r16,r17,r18,r15,v31,v0 ,v1 ,v30,0x0400,0x02F0,0x0400,0x0043,0x0400,0x0060,0x0030,e0 ,0x00FF)

	.word	0x2CFD6506
	.word	0x55D4298F
	.word	0x5FF661A1
	.word	0x29AD7D4D

	.word	0x01F074BF
	.word	0x85FB73C3
	.word	0x0909FA53
	.word	0x8D3698FA
	.word	0x11921394
	.word	0x95169718
	.word	0x199A1B9C
	.word	0x9D1E9F20

	ChkVst(40,sfv,r17,r18,r19,r16,v0 ,v1 ,v2 ,v31,0x0400,0x0320,0x0400,0x0043,0x0400,0x0000,0xFFC0,e8 ,0x00FF)

	ori	r1, r0, 0xFEED;
Fail:	sw	r0, 0xf80(r0);
	sw	r1, 0xf84(r0);
	sw	r2, 0xf88(r0);
	sw	r3, 0xf8c(r0);
	sw	r4, 0xf90(r0);
	sw	r5, 0xf94(r0);
	sw	r6, 0xf98(r0);
	sw	r7, 0xf9c(r0);
	sw	r8, 0xfa0(r0);
	sw	r9, 0xfa4(r0);
	sw	r10, 0xfa8(r0);
	sw	r11, 0xfac(r0);
	sw	r12, 0xfb0(r0);
	sw	r13, 0xfb4(r0);
	sw	r14, 0xfb8(r0);
	sw	r15, 0xfbc(r0);
	sw	r16, 0xfc0(r0);
	sw	r17, 0xfc4(r0);
	sw	r18, 0xfc8(r0);
	sw	r19, 0xfcc(r0);
	sw	r20, 0xfd0(r0);
	sw	r21, 0xfd4(r0);
	sw	r22, 0xfd8(r0);
	sw	r23, 0xfdc(r0);
	sw	r24, 0xfe0(r0);
	sw	r25, 0xfe4(r0);
	sw	r26, 0xfe8(r0);
	sw	r27, 0xfec(r0);
	sw	r28, 0xff0(r0);
	sw	r29, 0xff4(r0);
	sw	r30, 0xff8(r0);
	sw	r31, 0xffc(r0);
	break;