blob: f570a5f1fb6da3fc9e8cf254d317e9f1d45d2780 [file] [log] [blame]
//Original:/proj/frio/dv/testcases/core/c_comp3op_pr_plus_pr_sh1/c_comp3op_pr_plus_pr_sh1.dsp
// Spec Reference: comp3op pregs + pregs << 1
# mach: bfin
.include "testutils.inc"
start
imm32 p1, 0x89ab1def;
imm32 p2, 0x56781abc;
imm32 p3, 0xdef01234;
imm32 p4, 0x23451899;
imm32 p5, 0x78911345;
imm32 sp, 0x98761432;
imm32 fp, 0x12341678;
P1 = P1 + ( P1 << 1 );
P2 = P1 + ( P2 << 1 );
P3 = P1 + ( P3 << 1 );
P4 = P1 + ( P4 << 1 );
P5 = P1 + ( P5 << 1 );
SP = P1 + ( SP << 1 );
FP = P1 + FP;
CHECKREG p1, 0x9D0159CD;
CHECKREG p2, 0x49F18F45;
CHECKREG p3, 0x5AE17E35;
CHECKREG p4, 0xE38B8AFF;
CHECKREG p5, 0x8E238057;
CHECKREG sp, 0xCDED8231;
CHECKREG fp, 0xAF357045;
imm32 p1, 0x89abcd2f;
imm32 p2, 0x56789a2c;
imm32 p3, 0xdef01224;
imm32 p4, 0x23456829;
imm32 p5, 0x78912325;
imm32 sp, 0x98765422;
imm32 fp, 0x12345628;
P1 = P2 + ( P1 << 1 );
P2 = P2 + ( P2 << 1 );
P3 = P2 + ( P3 << 1 );
P4 = P2 + ( P4 << 1 );
P5 = P2 + ( P5 << 1 );
SP = P2 + ( SP << 1 );
FP = P2 + ( FP << 1 );
CHECKREG p1, 0x69D0348A;
CHECKREG p2, 0x0369CE84;
CHECKREG p3, 0xC149F2CC;
CHECKREG p4, 0x49F49ED6;
CHECKREG p5, 0xF48C14CE;
CHECKREG sp, 0x345676C8;
CHECKREG fp, 0x27D27AD4;
imm32 p1, 0x89abcde3;
imm32 p2, 0x56789ab3;
imm32 p3, 0xdef01233;
imm32 p4, 0x23456893;
imm32 p5, 0x78912343;
imm32 sp, 0x98765433;
imm32 fp, 0x12345673;
P1 = P3 + ( P1 << 1 );
P2 = P3 + ( P2 << 1 );
P3 = P3 + ( P3 << 1 );
P4 = P3 + ( P4 << 1 );
P5 = P3 + ( P5 << 1 );
SP = P3 + ( SP << 1 );
FP = P3 + ( FP << 1 );
CHECKREG p1, 0xF247ADF9;
CHECKREG p2, 0x8BE14799;
CHECKREG p3, 0x9CD03699;
CHECKREG p4, 0xE35B07BF;
CHECKREG p5, 0x8DF27D1F;
CHECKREG sp, 0xCDBCDEFF;
CHECKREG fp, 0xC138E37F;
imm32 p1, 0x49abcdef;
imm32 p2, 0x46789abc;
imm32 p3, 0x4ef01234;
imm32 p4, 0x43456899;
imm32 p5, 0x48912345;
imm32 sp, 0x48765432;
imm32 fp, 0x42345678;
P1 = P4 + ( P1 << 1 );
P2 = P4 + ( P2 << 1 );
P3 = P4 + ( P3 << 1 );
P4 = P4 + ( P4 << 1 );
P5 = P4 + ( P5 << 1 );
SP = P4 + ( SP << 1 );
FP = P4 + ( FP << 1 );
CHECKREG p1, 0xD69D0477;
CHECKREG p2, 0xD0369E11;
CHECKREG p3, 0xE1258D01;
CHECKREG p4, 0xC9D039CB;
CHECKREG p5, 0x5AF28055;
CHECKREG sp, 0x5ABCE22F;
CHECKREG fp, 0x4E38E6BB;
imm32 p1, 0x85abcdef;
imm32 p2, 0x55789abc;
imm32 p3, 0xd5f01234;
imm32 p4, 0x25456899;
imm32 p5, 0x75912345;
imm32 sp, 0x95765432;
imm32 fp, 0x15345678;
P1 = P5 + ( P1 << 1 );
P2 = P5 + ( P2 << 1 );
P3 = P5 + ( P3 << 1 );
P4 = P5 + ( P4 << 1 );
P5 = P5 + ( P5 << 1 );
SP = P5 + ( SP << 1 );
FP = P5 + ( FP << 1 );
CHECKREG p1, 0x80E8BF23;
CHECKREG p2, 0x208258BD;
CHECKREG p3, 0x217147AD;
CHECKREG p4, 0xC01BF477;
CHECKREG p5, 0x60B369CF;
CHECKREG sp, 0x8BA01233;
CHECKREG fp, 0x8B1C16BF;
imm32 p1, 0x89a6cdef;
imm32 p2, 0x56769abc;
imm32 p3, 0xdef61234;
imm32 p4, 0x23466899;
imm32 p5, 0x78962345;
imm32 sp, 0x98765432;
imm32 fp, 0x12365678;
P1 = SP + ( P1 << 1 );
P2 = SP + ( P2 << 1 );
P3 = SP + ( P3 << 1 );
P4 = SP + ( P4 << 1 );
P5 = SP + ( P5 << 1 );
SP = SP + ( SP << 1 );
FP = SP + ( FP << 1 );
CHECKREG p1, 0xABC3F010;
CHECKREG p2, 0x456389AA;
CHECKREG p3, 0x5662789A;
CHECKREG p4, 0xDF032564;
CHECKREG p5, 0x89A29ABC;
CHECKREG sp, 0xC962FC96;
CHECKREG fp, 0xEDCFA986;
imm32 p1, 0x89ab7def;
imm32 p2, 0x56787abc;
imm32 p3, 0xdef07234;
imm32 p4, 0x23457899;
imm32 p5, 0x78917345;
imm32 sp, 0x98767432;
imm32 fp, 0x12345678;
P1 = FP + ( P1 << 1 );
P2 = FP + ( P2 << 1 );
P3 = FP + ( P3 << 1 );
P4 = FP + ( P4 << 1 );
P5 = FP + ( P5 << 1 );
SP = FP + ( SP << 1 );
FP = FP + ( FP << 1 );
CHECKREG p1, 0x258B5256;
CHECKREG p2, 0xBF254BF0;
CHECKREG p3, 0xD0153AE0;
CHECKREG p4, 0x58BF47AA;
CHECKREG p5, 0x03573D02;
CHECKREG sp, 0x43213EDC;
CHECKREG fp, 0x369D0368;
imm32 p1, 0x29ab1def;
imm32 p2, 0x52781abc;
imm32 p3, 0xde201234;
imm32 p4, 0x23421899;
imm32 p5, 0x78912345;
imm32 sp, 0x98761232;
imm32 fp, 0x12341628;
P1 = P3 + ( P1 << 1 );
P2 = P4 + ( P1 << 1 );
P3 = P5 + ( P1 << 1 );
P4 = SP + ( P1 << 1 );
P5 = FP + ( P1 << 1 );
FP = P1 + ( P1 << 1 );
CHECKREG p1, 0x31764E12;
CHECKREG p2, 0x862EB4BD;
CHECKREG p3, 0xDB7DBF69;
CHECKREG p4, 0xFB62AE56;
CHECKREG p5, 0x7520B24C;
CHECKREG fp, 0x9462EA36;
imm32 p1, 0x893bcd2f;
imm32 p2, 0x56739a2c;
imm32 p3, 0x3ef03224;
imm32 p4, 0x23456329;
imm32 p5, 0x78312335;
imm32 sp, 0x98735423;
imm32 fp, 0x12343628;
P1 = P4 + ( P2 << 1 );
P2 = P5 + ( P2 << 1 );
P3 = SP + ( P2 << 1 );
P4 = FP + ( P2 << 1 );
SP = P1 + ( P2 << 1 );
FP = P2 + ( P2 << 1 );
CHECKREG p1, 0xD02C9781;
CHECKREG p2, 0x2518578D;
CHECKREG p3, 0xE2A4033D;
CHECKREG p4, 0x5C64E542;
CHECKREG sp, 0x1A5D469B;
CHECKREG fp, 0x6F4906A7;
imm32 p1, 0x894bcde3;
imm32 p2, 0x56749ab3;
imm32 p3, 0x4ef04233;
imm32 p4, 0x24456493;
imm32 p5, 0x78412344;
imm32 sp, 0x98745434;
imm32 fp, 0x12344673;
P1 = P5 + ( P3 << 1 );
P2 = SP + ( P3 << 1 );
P3 = FP + ( P3 << 1 );
P5 = P1 + ( P3 << 1 );
SP = P2 + ( P3 << 1 );
FP = P3 + ( P3 << 1 );
CHECKREG p1, 0x1621A7AA;
CHECKREG p2, 0x3654D89A;
CHECKREG p3, 0xB014CAD9;
CHECKREG p5, 0x764B3D5C;
CHECKREG sp, 0x967E6E4C;
CHECKREG fp, 0x103E608B;
imm32 p1, 0x49abc5ef;
imm32 p2, 0x46789a5c;
imm32 p3, 0x4ef01235;
imm32 p4, 0x53456899;
imm32 p5, 0x45912345;
imm32 sp, 0x48565432;
imm32 fp, 0x42355678;
P1 = SP + ( P4 << 1 );
P2 = FP + ( P4 << 1 );
P4 = P1 + ( P4 << 1 );
P5 = P2 + ( P4 << 1 );
SP = P3 + ( P4 << 1 );
FP = P4 + ( P4 << 1 );
CHECKREG p1, 0xEEE12564;
CHECKREG p2, 0xE8C027AA;
CHECKREG p4, 0x956BF696;
CHECKREG p5, 0x139814D6;
CHECKREG sp, 0x79C7FF61;
CHECKREG fp, 0xC043E3C2;
imm32 p1, 0x85ab6def;
imm32 p2, 0x657896bc;
imm32 p3, 0xd6f01264;
imm32 p4, 0x25656896;
imm32 p5, 0x75962345;
imm32 sp, 0x95766432;
imm32 fp, 0x15345678;
P1 = FP + ( P5 << 1 );
P3 = P1 + ( P5 << 1 );
P4 = P2 + ( P5 << 1 );
P5 = P3 + ( P5 << 1 );
SP = P4 + ( P5 << 1 );
FP = P5 + ( P5 << 1 );
CHECKREG p1, 0x00609D02;
CHECKREG p3, 0xEB8CE38C;
CHECKREG p4, 0x50A4DD46;
CHECKREG p5, 0xD6B92A16;
CHECKREG sp, 0xFE173172;
CHECKREG fp, 0x842B7E42;
imm32 p1, 0x89a7cdef;
imm32 p2, 0x56767abc;
imm32 p3, 0xdef61734;
imm32 p4, 0x73466879;
imm32 p5, 0x77962347;
imm32 sp, 0x98765432;
imm32 fp, 0x12375678;
P2 = P1 + ( SP << 1 );
P3 = P2 + ( SP << 1 );
P4 = P3 + ( SP << 1 );
P5 = P4 + ( SP << 1 );
SP = P5 + ( SP << 1 );
FP = SP + ( SP << 1 );
CHECKREG p2, 0xBA947653;
CHECKREG p3, 0xEB811EB7;
CHECKREG p4, 0x1C6DC71B;
CHECKREG p5, 0x4D5A6F7F;
CHECKREG sp, 0x7E4717E3;
CHECKREG fp, 0x7AD547A9;
imm32 p1, 0x88ab78ef;
imm32 p2, 0x56887a8c;
imm32 p3, 0x8ef87238;
imm32 p4, 0x28458899;
imm32 p5, 0x78817845;
imm32 sp, 0x98787482;
imm32 fp, 0x12348678;
P1 = P2 + ( FP << 1 );
P2 = P3 + ( FP << 1 );
P3 = P4 + ( FP << 1 );
P4 = P5 + ( FP << 1 );
P5 = SP + ( FP << 1 );
SP = FP + ( FP << 1 );
CHECKREG p1, 0x7AF1877C;
CHECKREG p2, 0xB3617F28;
CHECKREG p3, 0x4CAE9589;
CHECKREG p4, 0x9CEA8535;
CHECKREG p5, 0xBCE18172;
CHECKREG sp, 0x369D9368;
pass