1//Original:/proj/frio/dv/testcases/core/c_ptr2op_pr_neg_pr/c_ptr2op_pr_neg_pr.dsp 2// Spec Reference: ptr2op preg -= preg 3# mach: bfin 4 5.include "testutils.inc" 6 start 7 8// check p-reg to p-reg move 9 imm32 p1, 0xf0021003; 10 imm32 p2, 0x2e041005; 11 imm32 p3, 0x20d61007; 12 imm32 p4, 0x200a1009; 13 imm32 p5, 0x200a300b; 14 imm32 sp, 0x200c180d; 15 imm32 fp, 0x200e109f; 16 P1 -= P1; 17 P2 -= P1; 18 P3 -= P1; 19 P4 -= P1; 20 P5 -= P1; 21 SP -= P1; 22 FP -= P1; 23 CHECKREG p1, 0x00000000; 24 CHECKREG p2, 0x2E041005; 25 CHECKREG p3, 0x20D61007; 26 CHECKREG p4, 0x200A1009; 27 CHECKREG p5, 0x200A300B; 28 CHECKREG sp, 0x200C180D; 29 CHECKREG fp, 0x200E109F; 30 31 imm32 p1, 0x50021003; 32 imm32 p2, 0x26041005; 33 imm32 p3, 0x20761007; 34 imm32 p4, 0x20081009; 35 imm32 p5, 0x200a900b; 36 imm32 sp, 0x200c1a0d; 37 imm32 fp, 0x200e10bf; 38 P1 -= P2; 39 P2 -= P2; 40 P3 -= P2; 41 P4 -= P2; 42 P5 -= P2; 43 SP -= P2; 44 FP -= P2; 45 CHECKREG p1, 0x29FDFFFE; 46 CHECKREG p2, 0x00000000; 47 CHECKREG p3, 0x20761007; 48 CHECKREG p4, 0x20081009; 49 CHECKREG p5, 0x200A900B; 50 CHECKREG sp, 0x200C1A0D; 51 CHECKREG fp, 0x200E10BF; 52 53 imm32 p1, 0x20021003; 54 imm32 p2, 0x20041005; 55 imm32 p3, 0x20061007; 56 imm32 p4, 0x20081009; 57 imm32 p5, 0x200a100b; 58 imm32 sp, 0x200c100d; 59 imm32 fp, 0x200e100f; 60 P1 -= P3; 61 P2 -= P3; 62 P3 -= P3; 63 P4 -= P3; 64 P5 -= P3; 65 SP -= P3; 66 FP -= P3; 67 CHECKREG p1, 0xFFFBFFFC; 68 CHECKREG p2, 0xFFFDFFFE; 69 CHECKREG p3, 0x00000000; 70 CHECKREG p4, 0x20081009; 71 CHECKREG p5, 0x200A100B; 72 CHECKREG sp, 0x200C100D; 73 CHECKREG fp, 0x200E100F; 74 75 imm32 p1, 0xa0021003; 76 imm32 p2, 0x2c041005; 77 imm32 p3, 0x20b61007; 78 imm32 p4, 0x200d1009; 79 imm32 p5, 0x200ae00b; 80 imm32 sp, 0x200c110d; 81 imm32 fp, 0x200e104f; 82 P1 -= P4; 83 P2 -= P4; 84 P3 -= P4; 85 P4 -= P4; 86 P5 -= P4; 87 SP -= P4; 88 FP -= P4; 89 CHECKREG p1, 0x7FF4FFFA; 90 CHECKREG p2, 0x0BF6FFFC; 91 CHECKREG p3, 0x00A8FFFE; 92 CHECKREG p4, 0x00000000; 93 CHECKREG p5, 0x200AE00B; 94 CHECKREG sp, 0x200C110D; 95 CHECKREG fp, 0x200E104F; 96 97 imm32 p1, 0x10021003; 98 imm32 p2, 0x22041005; 99 imm32 p3, 0x20361007; 100 imm32 p4, 0x20041009; 101 imm32 p5, 0x200aa00b; 102 imm32 sp, 0x200c1b0d; 103 imm32 fp, 0x200e10cf; 104 P1 -= P5; 105 P2 -= P5; 106 P3 -= P5; 107 P4 -= P5; 108 P5 -= P5; 109 SP -= P5; 110 FP -= P5; 111 CHECKREG p1, 0xEFF76FF8; 112 CHECKREG p2, 0x01F96FFA; 113 CHECKREG p3, 0x002B6FFC; 114 CHECKREG p4, 0xFFF96FFE; 115 CHECKREG p5, 0x00000000; 116 CHECKREG sp, 0x200C1B0D; 117 CHECKREG fp, 0x200E10CF; 118 119 imm32 p1, 0x20021003; 120 imm32 p2, 0x20041005; 121 imm32 p3, 0x20061007; 122 imm32 p4, 0x20081009; 123 imm32 p5, 0x200a100b; 124 imm32 sp, 0x200c100d; 125 imm32 fp, 0x200e100f; 126 P1 -= SP; 127 P2 -= SP; 128 P3 -= SP; 129 P4 -= SP; 130 P5 -= SP; 131 SP -= SP; 132 FP -= SP; 133 CHECKREG p1, 0xFFF5FFF6; 134 CHECKREG p2, 0xFFF7FFF8; 135 CHECKREG p3, 0xFFF9FFFA; 136 CHECKREG p4, 0xFFFBFFFC; 137 CHECKREG p5, 0xFFFDFFFE; 138 CHECKREG sp, 0x00000000; 139 CHECKREG fp, 0x200E100F; 140 141 imm32 p1, 0x20021003; 142 imm32 p2, 0x20041005; 143 imm32 p3, 0x20061007; 144 imm32 p4, 0x20081009; 145 imm32 p5, 0x200a100b; 146 imm32 sp, 0x200c100d; 147 imm32 fp, 0x200e100f; 148 P1 -= FP; 149 P2 -= FP; 150 P3 -= FP; 151 P4 -= FP; 152 P5 -= FP; 153 SP -= FP; 154 FP -= FP; 155 CHECKREG p1, 0xFFF3FFF4; 156 CHECKREG p2, 0xFFF5FFF6; 157 CHECKREG p3, 0xFFF7FFF8; 158 CHECKREG p4, 0xFFF9FFFA; 159 CHECKREG p5, 0xFFFBFFFC; 160 CHECKREG sp, 0xFFFDFFFE; 161 CHECKREG fp, 0x00000000; 162 163 pass 164