//Original:/proj/frio/dv/testcases/core/c_ptr2op_pr_sft_2_1/c_ptr2op_pr_sft_2_1.dsp // Spec Reference: ptr2op preg = preg << 2 (>>2, >> 1) # mach: bfin .include "testutils.inc" start // check p-reg to p-reg move imm32 p1, 0xf0921203; imm32 p2, 0xbe041305; imm32 p3, 0xd0d61407; imm32 p4, 0xa00a1089; imm32 p5, 0x400a300b; imm32 sp, 0xe07c180d; imm32 fp, 0x206e109f; P1 = P1 << 2; P2 = P1 >> 2; P3 = P1 << 2; P4 = P1 >> 1; P5 = P1 >> 2; SP = P1 << 2; FP = P1 >> 1; CHECKREG p1, 0xC248480C; CHECKREG p2, 0x30921203; CHECKREG p3, 0x09212030; CHECKREG p4, 0x61242406; CHECKREG p5, 0x30921203; CHECKREG sp, 0x09212030; CHECKREG fp, 0x61242406; imm32 p1, 0x50021003; imm32 p2, 0x26041005; imm32 p3, 0x60761007; imm32 p4, 0x20081009; imm32 p5, 0xf00a900b; imm32 sp, 0xb00c1a0d; imm32 fp, 0x200e10bf; P1 = P2; P2 = P2; P3 = P2; P4 = P2; P5 = P2; SP = P2; FP = P2; CHECKREG p1, 0x26041005; CHECKREG p2, 0x26041005; CHECKREG p3, 0x26041005; CHECKREG p4, 0x26041005; CHECKREG p5, 0x26041005; CHECKREG sp, 0x26041005; CHECKREG fp, 0x26041005; imm32 p1, 0x20021003; imm32 p2, 0x20041005; imm32 p3, 0x20061007; imm32 p4, 0x20081009; imm32 p5, 0x200a100b; imm32 sp, 0x200c100d; imm32 fp, 0x200e100f; P1 = P3 << 2; P2 = P3 >> 1; P3 = P3 >> 2; P4 = P3 << 2; P5 = P3 << 2; SP = P3 >> 1; FP = P3 << 2; CHECKREG p1, 0x8018401C; CHECKREG p2, 0x10030803; CHECKREG p3, 0x08018401; CHECKREG p4, 0x20061004; CHECKREG p5, 0x20061004; CHECKREG sp, 0x0400C200; CHECKREG fp, 0x20061004; imm32 p1, 0xa0021003; imm32 p2, 0x2c041005; imm32 p3, 0x40b61007; imm32 p4, 0x250d1009; imm32 p5, 0x260ae00b; imm32 sp, 0x700c110d; imm32 fp, 0x900e104f; P1 = P4 >> 1; P2 = P4 << 2; P3 = P4 << 2; P4 = P4 >> 2; P5 = P4 << 2; SP = P4 >> 2; FP = P4 << 2; CHECKREG p1, 0x12868804; CHECKREG p2, 0x94344024; CHECKREG p3, 0x94344024; CHECKREG p4, 0x09434402; CHECKREG p5, 0x250D1008; CHECKREG sp, 0x0250D100; CHECKREG fp, 0x250D1008; imm32 p1, 0x10021003; imm32 p2, 0x22041005; imm32 p3, 0x20361007; imm32 p4, 0x20041009; imm32 p5, 0x200aa00b; imm32 sp, 0x200c1b0d; imm32 fp, 0x200e10cf; P1 = P5 << 2; P2 = P5 >> 2; P3 = P5 << 2; P4 = P5 << 2; P5 = P5 >> 1; SP = P5 >> 2; FP = P5 << 2; CHECKREG p1, 0x802A802C; CHECKREG p2, 0x0802A802; CHECKREG p3, 0x802A802C; CHECKREG p4, 0x802A802C; CHECKREG p5, 0x10055005; CHECKREG sp, 0x04015401; CHECKREG fp, 0x40154014; imm32 p1, 0x50021003; imm32 p2, 0x62041005; imm32 p3, 0x70e61007; imm32 p4, 0x290f1009; imm32 p5, 0x700ab00b; imm32 sp, 0x2a0c1d0d; imm32 fp, 0xb00e1e0f; P1 = SP << 2; P2 = SP << 2; P3 = SP >> 2; P4 = SP << 2; P5 = SP >> 2; SP = SP >> 1; FP = SP >> 2; CHECKREG p1, 0xA8307434; CHECKREG p2, 0xA8307434; CHECKREG p3, 0x0A830743; CHECKREG p4, 0xA8307434; CHECKREG p5, 0x0A830743; CHECKREG sp, 0x15060E86; CHECKREG fp, 0x054183A1; imm32 p1, 0x32002003; imm32 p2, 0x24004005; imm32 p3, 0x20506007; imm32 p4, 0x20068009; imm32 p5, 0x200ae00b; imm32 sp, 0x200c1f0d; imm32 fp, 0x200e10bf; P1 = FP >> 2; P2 = FP >> 1; P3 = FP << 2; P4 = FP >> 2; P5 = FP << 2; SP = FP >> 2; FP = FP << 2; CHECKREG p1, 0x0803842F; CHECKREG p2, 0x1007085F; CHECKREG p3, 0x803842FC; CHECKREG p4, 0x0803842F; CHECKREG p5, 0x803842FC; CHECKREG sp, 0x0803842F; CHECKREG fp, 0x803842FC; pass