//Original:/proj/frio/dv/testcases/core/c_compi2opd_flags/c_compi2opd_flags.dsp
// Spec Reference: compi2opd dregs += imm7 flags (az, an, ac, av0)
# mach: bfin

#include "test.h"
.include "testutils.inc"
	start

	INIT_R_REGS 0;
	ASTAT = R0;	// initialize astat

// AZ for R0
	imm32 r0, 0x00000000;
	R0 += 0;	// az = 1  an = 0   ac = 0  av0 = 0
	R7 = ASTAT;
	R0 += 1;	// az = 0  an = 0   ac = 0  av0 = 0
	R6 = ASTAT;
	R0 += -1;	// az = 1  an = 0   ac = 1  av0 = 0
	R5 = ASTAT;
	R1 = R0;
	R0 += -1;	// az = 0  an = 1   ac = 0  av0 = 0
	R4 = ASTAT;
	R0 += 1;	// az = 1  an = 0   ac = 1  av0 = 0
	R3 = ASTAT;
	CHECKREG r0,  0x00000000;
	CHECKREG r1,  0x00000000;
	CHECKREG r3,  (_AC0|_AC0_COPY|_AZ);
	CHECKREG r4,  (_AN);
	CHECKREG r5,  (_AC0|_AC0_COPY|_AZ);
	CHECKREG r6,  0x00000000;
	CHECKREG r7,  (_AZ);

// AN, AC for R0
	imm32 r0, 0xffffffff;
	R0 += 1;	// az = 1  an = 0   ac = 1  av0 = 0
	R7 = ASTAT;
	R1 = R0;
	R0 += 0;	// az = 1  an = 0   ac = 0  av0 = 0
	R6 = ASTAT;
	R0 += -1;	// az = 0  an = 1   ac = 0  av0 = 0
	R5 = ASTAT;
	CHECKREG r0,  0xFFFFFFFF;
	CHECKREG r1,  0x00000000;
	CHECKREG r5,  (_AN);
	CHECKREG r6,  (_AZ);
	CHECKREG r7,  (_AC0|_AC0_COPY|_AZ);

// AC, AV0 for R0
	imm32 r0, 0x7fffffff;
	R0 += 1;	// az = 0  an = 1   ac = 0  av0 = 1
	R7 = ASTAT;
	R1 = R0;
	R0 += -1;	// az = 0  an = 0   ac = 1  av0 = 1
	R6 = ASTAT;
	R2 = R0;
	R0 += -1;	// az = 0  an = 0   ac = 1  av0 = 0
	R5 = ASTAT;
	CHECKREG r0,  0x7FFFFFFE;
	CHECKREG r1,  0x80000000;
	CHECKREG r2,  0x7FFFFFFF;
	CHECKREG r5,  (_VS|_AC0|_AC0_COPY);
	CHECKREG r6,  (_VS|_V|_V_COPY|_AC0|_AC0_COPY);  //C
	CHECKREG r7,  (_VS|_V|_V_COPY|_AN); // A

// AZ, AN, AC, AV0 for R0
	R0 = 0;
	ASTAT = R0;
	imm32 r0, 0x80000000;
	R0 += -1;	// az = 0  an = 0   ac = 1  av0 = 1
	R7 = ASTAT;
	R1 = R0;
	R0 += 1;	// az = 1  an = 1   ac = 0  av0 = 1
	R6 = ASTAT;
	R2 = R0;
	R0 += 1;	// az = 0  an = 1   ac = 0  av0 = 0
	R5 = ASTAT;
	CHECKREG r0,  0x80000001;
	CHECKREG r1,  0x7FFFFFFF;
	CHECKREG r2,  0x80000000;
	CHECKREG r5,  (_VS|_AN);
	CHECKREG r6,  (_VS|_V|_V_COPY|_AN);
	CHECKREG r7,  (_VS|_V|_V_COPY|_AC0|_AC0_COPY);

// AZ for R0
	R1 = 0;
	ASTAT = R1;
	imm32 r1, 0x00000000;
	R1 += 0;	// az = 1  an = 0   ac = 0  av0 = 0
	R7 = ASTAT;
	R1 += 1;	// az = 0  an = 0   ac = 0  av0 = 0
	R6 = ASTAT;
	R1 += -1;	// az = 1  an = 0   ac = 1  av0 = 0
	R5 = ASTAT;
	R0 = R1;
	R1 += -1;	// az = 0  an = 1   ac = 0  av0 = 0
	R4 = ASTAT;
	R1 += 1;	// az = 1  an = 0   ac = 1  av0 = 0
	R3 = ASTAT;
	CHECKREG r0,  0x00000000;
	CHECKREG r1,  0x00000000;
	CHECKREG r3,  (_AC0|_AC0_COPY|_AZ);
	CHECKREG r4,  (_AN);
	CHECKREG r5,  (_AC0|_AC0_COPY|_AZ);
	CHECKREG r6,  0x00000000;
	CHECKREG r7,  (_AZ);

// AN, AC for R1
	imm32 r1, 0xffffffff;
	R1 += 1;	// az = 1  an = 0   ac = 1  av0 = 0
	R7 = ASTAT;
	R0 = R1;
	R1 += 0;	// az = 1  an = 0   ac = 0  av0 = 0
	R6 = ASTAT;
	R1 += -1;	// az = 0  an = 1   ac = 0  av0 = 0
	R5 = ASTAT;
	CHECKREG r0,  0x00000000;
	CHECKREG r1,  0xFFFFFFFF;
	CHECKREG r5,  (_AN);
	CHECKREG r6,  (_AZ);
	CHECKREG r7,  (_AC0|_AC0_COPY|_AZ);

// AC, AV0 for R1
	imm32 r1, 0x7fffffff;
	R1 += 1;	// az = 0  an = 1   ac = 0  av0 = 1
	R7 = ASTAT;
	R0 = R1;
	R1 += -1;	// az = 0  an = 0   ac = 1  av0 = 1
	R6 = ASTAT;
	R2 = R1;
	R1 += -1;	// az = 0  an = 0   ac = 1  av0 = 0
	R5 = ASTAT;
	CHECKREG r0,  0x80000000;
	CHECKREG r1,  0x7FFFFFFE;
	CHECKREG r2,  0x7FFFFFFF;
	CHECKREG r5,  (_VS|_AC0|_AC0_COPY);
	CHECKREG r6,  (_VS|_V|_V_COPY|_AC0|_AC0_COPY);
	CHECKREG r7,  (_VS|_V|_V_COPY|_AN);

// AZ, AN, AC, AV0 for R1
	R1 = 0;
	ASTAT = R1;
	imm32 r1, 0x80000000;
	R1 += -1;	// az = 0  an = 0   ac = 1  av0 = 1
	R7 = ASTAT;
	R0 = R1;
	R1 += 1;	// az = 1  an = 1   ac = 0  av0 = 1
	R6 = ASTAT;
	R2 = R1;
	R1 += 1;	// az = 0  an = 1   ac = 0  av0 = 0
	R5 = ASTAT;
	CHECKREG r0,  0x7FFFFFFF;
	CHECKREG r1,  0x80000001;
	CHECKREG r2,  0x80000000;
	CHECKREG r5,  (_VS|_AN);
	CHECKREG r6,  (_VS|_V|_V_COPY|_AN);
	CHECKREG r7,  (_VS|_V|_V_COPY|_AC0|_AC0_COPY);

// AZ for R2
	imm32 r2, 0x00000000;
	ASTAT = R2;
	R2 += 0;	// az = 1  an = 0   ac = 0  av0 = 0
	R7 = ASTAT;
	R2 += 1;	// az = 0  an = 0   ac = 0  av0 = 0
	R6 = ASTAT;
	R2 += -1;	// az = 1  an = 0   ac = 1  av0 = 0
	R5 = ASTAT;
	R1 = R2;
	R2 += -1;	// az = 0  an = 1   ac = 0  av0 = 0
	R4 = ASTAT;
	R2 += 1;	// az = 1  an = 0   ac = 1  av0 = 0
	R3 = ASTAT;
	CHECKREG r1,  0x00000000;
	CHECKREG r2,  0x00000000;
	CHECKREG r3,  (_AC0|_AC0_COPY|_AZ);
	CHECKREG r4,  (_AN);
	CHECKREG r5,  (_AC0|_AC0_COPY|_AZ);
	CHECKREG r6,  0x00000000;
	CHECKREG r7,  (_AZ);

// AN, AC for R2
	imm32 r2, 0xffffffff;
	R2 += 1;	// az = 1  an = 0   ac = 1  av0 = 0
	R7 = ASTAT;
	R1 = R2;
	R2 += 0;	// az = 1  an = 0   ac = 0  av0 = 0
	R6 = ASTAT;
	R2 += -1;	// az = 0  an = 1   ac = 0  av0 = 0
	R5 = ASTAT;
	CHECKREG r2,  0xFFFFFFFF;
	CHECKREG r1,  0x00000000;
	CHECKREG r5,  (_AN);
	CHECKREG r6,  (_AZ);
	CHECKREG r7,  (_AC0|_AC0_COPY|_AZ);

// AC, AV0 for R2
	imm32 r2, 0x7fffffff;
	R2 += 1;	// az = 0  an = 1   ac = 0  av0 = 1
	R7 = ASTAT;
	R0 = R2;
	R2 += -1;	// az = 0  an = 0   ac = 1  av0 = 1
	R6 = ASTAT;
	R1 = R2;
	R2 += -1;	// az = 0  an = 0   ac = 1  av0 = 0
	R5 = ASTAT;
	CHECKREG r0,  0x80000000;
	CHECKREG r1,  0x7FFFFFFF;
	CHECKREG r2,  0x7FFFFFFE;
	CHECKREG r5,  (_VS|_AC0|_AC0_COPY);
	CHECKREG r6,  (_VS|_V|_V_COPY|_AC0|_AC0_COPY);
	CHECKREG r7,  (_VS|_V|_V_COPY|_AN);

// AZ, AN, AC, AV0 for R2
	R2 = 0;
	ASTAT = R2;
	imm32 r2, 0x80000000;
	R2 += -1;	// az = 0  an = 0   ac = 1  av0 = 1
	R7 = ASTAT;
	R0 = R2;
	R2 += 1;	// az = 1  an = 1   ac = 0  av0 = 1
	R6 = ASTAT;
	R1 = R2;
	R2 += 1;	// az = 0  an = 1   ac = 0  av0 = 0
	R5 = ASTAT;
	CHECKREG r0,  0x7FFFFFFF;
	CHECKREG r1,  0x80000000;
	CHECKREG r2,  0x80000001;
	CHECKREG r5,  (_VS|_AN);
	CHECKREG r6,  (_VS|_V|_V_COPY|_AN);
	CHECKREG r7,  (_VS|_V|_V_COPY|_AC0|_AC0_COPY);

// AZ for R3
	imm32 r3, 0x00000000;
	ASTAT = R3;
	R3 += 0;	// az = 1  an = 0   ac = 0  av0 = 0
	R7 = ASTAT;
	R3 += 1;	// az = 0  an = 0   ac = 0  av0 = 0
	R6 = ASTAT;
	R3 += -1;	// az = 1  an = 0   ac = 1  av0 = 0
	R5 = ASTAT;
	R0 = R3;
	R3 += -1;	// az = 0  an = 1   ac = 0  av0 = 0
	R4 = ASTAT;
	R3 += 1;	// az = 1  an = 0   ac = 1  av0 = 0
	R2 = ASTAT;
	CHECKREG r0,  0x00000000;
	CHECKREG r2,  (_AC0|_AC0_COPY|_AZ);
	CHECKREG r3,  0x00000000;
	CHECKREG r4,  (_AN);
	CHECKREG r5,  (_AC0|_AC0_COPY|_AZ);
	CHECKREG r6,  0x00000000;
	CHECKREG r7,  (_AZ);

// AN, AC for R3
	imm32 r3, 0xffffffff;
	R3 += 1;	// az = 1  an = 0   ac = 1  av0 = 0
	R7 = ASTAT;
	R0 = R3;
	R3 += 0;	// az = 1  an = 0   ac = 0  av0 = 0
	R6 = ASTAT;
	R3 += -1;	// az = 0  an = 1   ac = 0  av0 = 0
	R5 = ASTAT;
	CHECKREG r0,  0x00000000;
	CHECKREG r3,  0xFFFFFFFF;
	CHECKREG r5,  (_AN);
	CHECKREG r6,  (_AZ);
	CHECKREG r7,  (_AC0|_AC0_COPY|_AZ);

// AC, AV0 for R3
	imm32 r3, 0x7fffffff;
	R3 += 1;	// az = 0  an = 1   ac = 0  av0 = 1
	R7 = ASTAT;
	R0 = R3;
	R3 += -1;	// az = 0  an = 0   ac = 1  av0 = 1
	R6 = ASTAT;
	R1 = R3;
	R3 += -1;	// az = 0  an = 0   ac = 1  av0 = 0
	R5 = ASTAT;
	CHECKREG r0,  0x80000000;
	CHECKREG r1,  0x7FFFFFFF;
	CHECKREG r3,  0x7FFFFFFE;
	CHECKREG r5,  (_VS|_AC0|_AC0_COPY);
	CHECKREG r6,  (_VS|_V|_V_COPY|_AC0|_AC0_COPY);
	CHECKREG r7,  (_VS|_V|_V_COPY|_AN);

// AZ, AN, AC, AV0 for R3
	R3 = 0;
	ASTAT = R3;
	imm32 r3, 0x80000000;
	R3 += -1;	// az = 0  an = 0   ac = 1  av0 = 1
	R7 = ASTAT;
	R0 = R3;
	R3 += 1;	// az = 1  an = 1   ac = 0  av0 = 1
	R6 = ASTAT;
	R1 = R3;
	R3 += 1;	// az = 0  an = 1   ac = 0  av0 = 0
	R5 = ASTAT;
	CHECKREG r0,  0x7FFFFFFF;
	CHECKREG r1,  0x80000000;
	CHECKREG r3,  0x80000001;
	CHECKREG r5,  (_VS|_AN);
	CHECKREG r6,  (_VS|_V|_V_COPY|_AN);
	CHECKREG r7,  (_VS|_V|_V_COPY|_AC0|_AC0_COPY);

// AZ for R4
	imm32 r4, 0x00000000;
	ASTAT = R4;
	R4 += 0;	// az = 1  an = 0   ac = 0  av0 = 0
	R7 = ASTAT;
	R4 += 1;	// az = 0  an = 0   ac = 0  av0 = 0
	R6 = ASTAT;
	R4 += -1;	// az = 1  an = 0   ac = 1  av0 = 0
	R5 = ASTAT;
	R1 = R4;
	R4 += -1;	// az = 0  an = 1   ac = 0  av0 = 0
	R3 = ASTAT;
	R4 += 1;	// az = 1  an = 0   ac = 1  av0 = 0
	R2 = ASTAT;
	CHECKREG r1,  0x00000000;
	CHECKREG r2,  (_AC0|_AC0_COPY|_AZ);
	CHECKREG r3,  (_AN);
	CHECKREG r4,  0x00000000;
	CHECKREG r5,  (_AC0|_AC0_COPY|_AZ);
	CHECKREG r6,  0x00000000;
	CHECKREG r7,  (_AZ);

// AN, AC for R4
	imm32 r4, 0xffffffff;
	R4 += 1;	// az = 1  an = 0   ac = 1  av0 = 0
	R7 = ASTAT;
	R1 = R4;
	R4 += 0;	// az = 1  an = 0   ac = 0  av0 = 0
	R6 = ASTAT;
	R4 += -1;	// az = 0  an = 1   ac = 0  av0 = 0
	R5 = ASTAT;
	CHECKREG r1,  0x00000000;
	CHECKREG r4,  0xFFFFFFFF;
	CHECKREG r5,  (_AN);
	CHECKREG r6,  (_AZ);
	CHECKREG r7,  (_AC0|_AC0_COPY|_AZ);

// AC, AV0 for R4
	imm32 r4, 0x7fffffff;
	R4 += 1;	// az = 0  an = 1   ac = 0  av0 = 1
	R7 = ASTAT;
	R1 = R4;
	R4 += -1;	// az = 0  an = 0   ac = 1  av0 = 1
	R6 = ASTAT;
	R2 = R4;
	R4 += -1;	// az = 0  an = 0   ac = 1  av0 = 0
	R5 = ASTAT;
	CHECKREG r1,  0x80000000;
	CHECKREG r2,  0x7FFFFFFF;
	CHECKREG r4,  0x7FFFFFFE;
	CHECKREG r5,  (_VS|_AC0|_AC0_COPY);
	CHECKREG r6,  (_VS|_V|_V_COPY|_AC0|_AC0_COPY);
	CHECKREG r7,  (_VS|_V|_V_COPY|_AN);

// AZ, AN, AC, AV0 for R4
	R4 = 0;
	ASTAT = R4;
	imm32 r4, 0x80000000;
	R4 += -1;	// az = 0  an = 0   ac = 1  av0 = 1
	R7 = ASTAT;
	R1 = R4;
	R4 += 1;	// az = 1  an = 1   ac = 0  av0 = 1
	R6 = ASTAT;
	R2 = R4;
	R4 += 1;	// az = 0  an = 1   ac = 0  av0 = 0
	R5 = ASTAT;
	CHECKREG r1,  0x7FFFFFFF;
	CHECKREG r2,  0x80000000;
	CHECKREG r4,  0x80000001;
	CHECKREG r5,  (_VS|_AN);
	CHECKREG r6,  (_VS|_V|_V_COPY|_AN);
	CHECKREG r7,  (_VS|_V|_V_COPY|_AC0|_AC0_COPY);

// AZ for R5
	imm32 r5, 0x00000000;
	ASTAT = R5;
	R5 += 0;	// az = 1  an = 0   ac = 0  av0 = 0
	R7 = ASTAT;
	R5 += 1;	// az = 0  an = 0   ac = 0  av0 = 0
	R6 = ASTAT;
	R5 += -1;	// az = 1  an = 0   ac = 1  av0 = 0
	R2 = ASTAT;
	R0 = R5;
	R5 += -1;	// az = 0  an = 1   ac = 0  av0 = 0
	R4 = ASTAT;
	R5 += 1;	// az = 1  an = 0   ac = 1  av0 = 0
	R3 = ASTAT;
	CHECKREG r0,  0x00000000;
	CHECKREG r2,  (_AC0|_AC0_COPY|_AZ);
	CHECKREG r3,  (_AC0|_AC0_COPY|_AZ);
	CHECKREG r4,  (_AN);
	CHECKREG r5,  0x00000000;
	CHECKREG r6,  0x00000000;
	CHECKREG r7,  (_AZ);

// AN, AC for R5
	imm32 r5, 0xffffffff;
	R5 += 1;	// az = 1  an = 0   ac = 1  av0 = 0
	R7 = ASTAT;
	R0 = R5;
	R5 += 0;	// az = 1  an = 0   ac = 0  av0 = 0
	R6 = ASTAT;
	R5 += -1;	// az = 0  an = 1   ac = 0  av0 = 0
	R4 = ASTAT;
	CHECKREG r0,  0x00000000;
	CHECKREG r4,  (_AN);
	CHECKREG r5,  0xFFFFFFFF;
	CHECKREG r6,  (_AZ);
	CHECKREG r7,  (_AC0|_AC0_COPY|_AZ);

// AC, AV0 for R5
	imm32 r5, 0x7fffffff;
	R5 += 1;	// az = 0  an = 1   ac = 0  av0 = 1
	R7 = ASTAT;
	R0 = R5;
	R5 += -1;	// az = 0  an = 0   ac = 1  av0 = 1
	R6 = ASTAT;
	R2 = R5;
	R5 += -1;	// az = 0  an = 0   ac = 1  av0 = 0
	R4 = ASTAT;
	CHECKREG r0,  0x80000000;
	CHECKREG r2,  0x7FFFFFFF;
	CHECKREG r4,  (_VS|_AC0|_AC0_COPY);
	CHECKREG r5,  0x7FFFFFFE;
	CHECKREG r6,  (_VS|_V|_V_COPY|_AC0|_AC0_COPY);
	CHECKREG r7,  (_VS|_V|_V_COPY|_AN);

// AZ, AN, AC, AV0 for R5
	R5 = 0;
	ASTAT = R5;
	imm32 r5, 0x80000000;
	R5 += -1;	// az = 0  an = 0   ac = 1  av0 = 1
	R7 = ASTAT;
	R0 = R5;
	R5 += 1;	// az = 1  an = 1   ac = 0  av0 = 1
	R6 = ASTAT;
	R2 = R5;
	R5 += 1;	// az = 0  an = 1   ac = 0  av0 = 0
	R4 = ASTAT;
	CHECKREG r0,  0x7FFFFFFF;
	CHECKREG r2,  0x80000000;
	CHECKREG r4,  (_VS|_AN);
	CHECKREG r5,  0x80000001;
	CHECKREG r6,  (_VS|_V|_V_COPY|_AN);
	CHECKREG r7,  (_VS|_V|_V_COPY|_AC0|_AC0_COPY);

// AZ for R6
	imm32 r6, 0x00000000;
	ASTAT = R6;
	R6 += 0;	// az = 1  an = 0   ac = 0  av0 = 0
	R7 = ASTAT;
	R6 += 1;	// az = 0  an = 0   ac = 0  av0 = 0
	R0 = ASTAT;
	R6 += -1;	// az = 1  an = 0   ac = 1  av0 = 0
	R5 = ASTAT;
	R1 = R6;
	R6 += -1;	// az = 0  an = 1   ac = 0  av0 = 0
	R4 = ASTAT;
	R6 += 1;	// az = 1  an = 0   ac = 1  av0 = 0
	R3 = ASTAT;
	CHECKREG r0,  0x00000000;
	CHECKREG r1,  0x00000000;
	CHECKREG r3,  (_AC0|_AC0_COPY|_AZ);
	CHECKREG r4,  (_AN);
	CHECKREG r5,  (_AC0|_AC0_COPY|_AZ);
	CHECKREG r6,  0x00000000;
	CHECKREG r7,  (_AZ);

// AN, AC for R6
	imm32 r6, 0xffffffff;
	R6 += 1;	// az = 1  an = 0   ac = 1  av0 = 0
	R7 = ASTAT;
	R1 = R6;
	R6 += 0;	// az = 1  an = 0   ac = 0  av0 = 0
	R4 = ASTAT;
	R6 += -1;	// az = 0  an = 1   ac = 0  av0 = 0
	R5 = ASTAT;
	CHECKREG r1,  0x00000000;
	CHECKREG r4,  (_AZ);
	CHECKREG r5,  (_AN);
	CHECKREG r6,  0xFFFFFFFF;
	CHECKREG r7,  (_AC0|_AC0_COPY|_AZ);

// AC, AV0 for R6
	R6 = 0;
	ASTAT = R6;
	imm32 r6, 0x7fffffff;
	R6 += 1;	// az = 0  an = 1   ac = 0  av0 = 1
	R7 = ASTAT;
	R0 = R6;
	R6 += -1;	// az = 0  an = 0   ac = 1  av0 = 1
	R4 = ASTAT;
	R1 = R6;
	R6 += -1;	// az = 0  an = 0   ac = 1  av0 = 0
	R5 = ASTAT;
	CHECKREG r0,  0x80000000;
	CHECKREG r1,  0x7FFFFFFF;
	CHECKREG r4,  (_VS|_V|_V_COPY|_AC0|_AC0_COPY);
	CHECKREG r5,  (_VS|_AC0|_AC0_COPY);
	CHECKREG r6,  0x7FFFFFFE;
	CHECKREG r7,  (_VS|_V|_V_COPY|_AN);

// AZ, AN, AC, AV0 for R6
	R6 = 0;
	ASTAT = R6;
	imm32 r6, 0x80000000;
	R6 += -1;	// az = 0  an = 0   ac = 1  av0 = 1
	R7 = ASTAT;
	R0 = R6;
	R6 += 1;	// az = 1  an = 1   ac = 0  av0 = 1
	R4 = ASTAT;
	R1 = R6;
	R6 += 1;	// az = 0  an = 1   ac = 0  av0 = 0
	R5 = ASTAT;
	CHECKREG r0,  0x7FFFFFFF;
	CHECKREG r1,  0x80000000;
	CHECKREG r4,  (_VS|_V|_V_COPY|_AN);
	CHECKREG r5,  (_VS|_AN);
	CHECKREG r6,  0x80000001;
	CHECKREG r7,  (_VS|_V|_V_COPY|_AC0|_AC0_COPY);

// AZ for R7
	imm32 r7, 0x00000000;
	ASTAT = R7;
	R7 += 0;	// az = 1  an = 0   ac = 0  av0 = 0
	R1 = ASTAT;
	R7 += 1;	// az = 0  an = 0   ac = 0  av0 = 0
	R6 = ASTAT;
	R7 += -1;	// az = 1  an = 0   ac = 1  av0 = 0
	R5 = ASTAT;
	R0 = R7;
	R7 += -1;	// az = 0  an = 1   ac = 0  av0 = 0
	R4 = ASTAT;
	R7 += 1;	// az = 1  an = 0   ac = 1  av0 = 0
	R2 = ASTAT;
	CHECKREG r0,  0x00000000;
	CHECKREG r1,  (_AZ);
	CHECKREG r2,  (_AC0|_AC0_COPY|_AZ);
	CHECKREG r4,  (_AN);
	CHECKREG r5,  (_AC0|_AC0_COPY|_AZ);
	CHECKREG r6,  0x00000000;
	CHECKREG r7,  0x00000000;

// AN, AC for R7
	imm32 r7, 0xffffffff;
	R7 += 1;	// az = 1  an = 0   ac = 1  av0 = 0
	R4 = ASTAT;
	R0 = R7;
	R7 += 0;	// az = 1  an = 0   ac = 0  av0 = 0
	R6 = ASTAT;
	R7 += -1;	// az = 0  an = 1   ac = 0  av0 = 0
	R5 = ASTAT;
	CHECKREG r0,  0x00000000;
	CHECKREG r4,  (_AC0|_AC0_COPY|_AZ);
	CHECKREG r5,  (_AN);
	CHECKREG r6,  (_AZ);
	CHECKREG r7,  0xFFFFFFFF;

// AC, AV0 for R7
	R7 = 0;
	ASTAT = R7;
	imm32 r7, 0x7fffffff;
	R7 += 1;	// az = 0  an = 1   ac = 0  av0 = 1
	R4 = ASTAT;
	R0 = R7;
	R7 += -1;	// az = 0  an = 0   ac = 1  av0 = 1
	R6 = ASTAT;
	R1 = R7;
	R7 += -1;	// az = 0  an = 0   ac = 1  av0 = 0
	R5 = ASTAT;
	CHECKREG r0,  0x80000000;
	CHECKREG r1,  0x7FFFFFFF;
	CHECKREG r4,  (_VS|_V|_V_COPY|_AN);
	CHECKREG r5,  (_VS|_AC0|_AC0_COPY);
	CHECKREG r6,  (_VS|_V|_V_COPY|_AC0|_AC0_COPY);
	CHECKREG r7,  0x7FFFFFFE;

// AZ, AN, AC, AV0 for R7
	R7 = 0;
	ASTAT = R7;
	imm32 r7, 0x80000000;
	R7 += -1;	// az = 0  an = 0   ac = 1  av0 = 1
	R4 = ASTAT;
	R0 = R7;
	R7 += 1;	// az = 1  an = 1   ac = 0  av0 = 1
	R6 = ASTAT;
	R1 = R7;
	R7 += 1;	// az = 0  an = 1   ac = 0  av0 = 0
	R5 = ASTAT;
	CHECKREG r0,  0x7FFFFFFF;
	CHECKREG r1,  0x80000000;
	CHECKREG r4,  (_VS|_V|_V_COPY|_AC0|_AC0_COPY);
	CHECKREG r5,  (_VS|_AN);
	CHECKREG r6,  (_VS|_V|_V_COPY|_AN);
	CHECKREG r7,  0x80000001;

	pass