blob: 85314a81c4a2d13a36ca45297dcc8beedfd52ce6 [file] [log] [blame]
//Original:/testcases/core/c_alu2op_conv_neg/c_alu2op_conv_neg.dsp
// Spec Reference: alu2op (-) negative
# mach: bfin
.include "testutils.inc"
start
imm32 r0, 0x00789abc;
imm32 r1, 0x12345678;
imm32 r2, 0x23456789;
imm32 r3, 0x3456789a;
imm32 r4, 0x856789ab;
imm32 r5, 0x96789abc;
imm32 r6, 0xa789abcd;
imm32 r7, 0xb89abcde;
R0 = - R0;
R1 = - R0;
R2 = - R0;
R3 = - R0;
R4 = - R0;
R5 = - R0;
R6 = - R0;
R7 = - R0;
CHECKREG r0, 0xFF876544;
CHECKREG r1, 0x00789ABC;
CHECKREG r2, 0x00789ABC;
CHECKREG r3, 0x00789ABC;
CHECKREG r4, 0x00789ABC;
CHECKREG r5, 0x00789ABC;
CHECKREG r6, 0x00789ABC;
CHECKREG r7, 0x00789ABC;
imm32 r0, 0x01230002;
imm32 r1, 0x00374659;
imm32 r2, 0x93456789;
imm32 r3, 0xa456789a;
imm32 r4, 0xb56789ab;
imm32 r5, 0xc6789abc;
imm32 r6, 0xd789abcd;
imm32 r7, 0xe89abcde;
R0 = - R1;
R1 = - R1;
R2 = - R1;
R3 = - R1;
R4 = - R1;
R5 = - R1;
R6 = - R1;
R7 = - R1;
CHECKREG r0, 0xFFC8B9A7;
CHECKREG r1, 0xFFC8B9A7;
CHECKREG r2, 0x00374659;
CHECKREG r3, 0x00374659;
CHECKREG r4, 0x00374659;
CHECKREG r5, 0x00374659;
CHECKREG r6, 0x00374659;
CHECKREG r7, 0x00374659;
imm32 r0, 0x10789abc;
imm32 r1, 0x11345678;
imm32 r2, 0x93156789;
imm32 r3, 0xd451789a;
imm32 r4, 0x856719ab;
imm32 r5, 0x267891bc;
imm32 r6, 0xa789ab1d;
imm32 r7, 0x989ab1de;
R0 = - R2;
R1 = - R2;
R2 = - R2;
R3 = - R2;
R4 = - R2;
R5 = - R2;
R6 = - R2;
R7 = - R2;
CHECKREG r0, 0x6CEA9877;
CHECKREG r1, 0x6CEA9877;
CHECKREG r2, 0x6CEA9877;
CHECKREG r3, 0x93156789;
CHECKREG r4, 0x93156789;
CHECKREG r5, 0x93156789;
CHECKREG r6, 0x93156789;
CHECKREG r7, 0x93156789;
imm32 r0, 0x21230002;
imm32 r1, 0x02374659;
imm32 r2, 0x93256789;
imm32 r3, 0xa952789a;
imm32 r4, 0xb59729ab;
imm32 r5, 0xc67992bc;
imm32 r6, 0xd7899b2d;
imm32 r7, 0xe89ab9d2;
R0 = - R3;
R1 = - R3;
R2 = - R3;
R3 = - R3;
R4 = - R3;
R5 = - R3;
R6 = - R3;
R7 = - R3;
CHECKREG r0, 0x56AD8766;
CHECKREG r1, 0x56AD8766;
CHECKREG r2, 0x56AD8766;
CHECKREG r3, 0x56AD8766;
CHECKREG r4, 0xA952789A;
CHECKREG r5, 0xA952789A;
CHECKREG r6, 0xA952789A;
CHECKREG r7, 0xA952789A;
imm32 r0, 0xa0789abc;
imm32 r1, 0x1a345678;
imm32 r2, 0x23a56789;
imm32 r3, 0x645a789a;
imm32 r4, 0x8667a9ab;
imm32 r5, 0x96689abc;
imm32 r6, 0xa787abad;
imm32 r7, 0xb89a7cda;
R0 = - R4;
R1 = - R4;
R2 = - R4;
R3 = - R4;
R4 = - R4;
R5 = - R4;
R6 = - R4;
R7 = - R4;
CHECKREG r0, 0x79985655;
CHECKREG r1, 0x79985655;
CHECKREG r2, 0x79985655;
CHECKREG r3, 0x79985655;
CHECKREG r4, 0x79985655;
CHECKREG r5, 0x8667A9AB;
CHECKREG r6, 0x8667A9AB;
CHECKREG r7, 0x8667A9AB;
imm32 r0, 0xf1230002;
imm32 r1, 0x0f374659;
imm32 r2, 0x93f56789;
imm32 r3, 0xa45f789a;
imm32 r4, 0xb567f9ab;
imm32 r5, 0xc6789fbc;
imm32 r6, 0xd789abfd;
imm32 r7, 0xe89abcdf;
R0 = - R5;
R1 = - R5;
R2 = - R5;
R3 = - R5;
R4 = - R5;
R5 = - R5;
R6 = - R5;
R7 = - R5;
CHECKREG r0, 0x39876044;
CHECKREG r1, 0x39876044;
CHECKREG r2, 0x39876044;
CHECKREG r3, 0x39876044;
CHECKREG r4, 0x39876044;
CHECKREG r5, 0x39876044;
CHECKREG r6, 0xC6789FBC;
CHECKREG r7, 0xC6789FBC;
imm32 r0, 0xe0789abc;
imm32 r1, 0xe2345678;
imm32 r2, 0x2e456789;
imm32 r3, 0x34e6789a;
imm32 r4, 0x856e89ab;
imm32 r5, 0x9678eabc;
imm32 r6, 0xa789aecd;
imm32 r7, 0xb89abcee;
R0 = - R6;
R1 = - R6;
R2 = - R6;
R3 = - R6;
R4 = - R6;
R5 = - R6;
R6 = - R6;
R7 = - R6;
CHECKREG r0, 0x58765133;
CHECKREG r1, 0x58765133;
CHECKREG r2, 0x58765133;
CHECKREG r3, 0x58765133;
CHECKREG r4, 0x58765133;
CHECKREG r5, 0x58765133;
CHECKREG r6, 0x58765133;
CHECKREG r7, 0xA789AECD;
imm32 r0, 0x012300f5;
imm32 r1, 0x80374659;
imm32 r2, 0x98456589;
imm32 r3, 0xa486589a;
imm32 r4, 0xb56589ab;
imm32 r5, 0xc6588abc;
imm32 r6, 0xd589a8cd;
imm32 r7, 0x589abc88;
R0 = - R7;
R1 = - R7;
R2 = - R7;
R3 = - R7;
R4 = - R7;
R5 = - R7;
R7 = - R7;
R6 = - R7;
CHECKREG r0, 0xA7654378;
CHECKREG r1, 0xA7654378;
CHECKREG r2, 0xA7654378;
CHECKREG r3, 0xA7654378;
CHECKREG r4, 0xA7654378;
CHECKREG r5, 0xA7654378;
CHECKREG r6, 0x589ABC88;
CHECKREG r7, 0xA7654378;
pass