1//Original:/testcases/core/c_logi2op_bittgl/c_logi2op_bittgl.dsp 2// Spec Reference: Logi2op functions: bittgl 3# mach: bfin 4 5.include "testutils.inc" 6 start 7 8 9 10imm32 r0, 0x00000000; 11imm32 r1, 0x00000000; 12imm32 r2, 0x00000000; 13imm32 r3, 0x00000000; 14imm32 r4, 0x00000000; 15imm32 r5, 0x00000000; 16imm32 r6, 0x00000000; 17imm32 r7, 0x00000000; 18 19// bit 0-7 20BITTGL( R0 , 0 ); /* r0 = 0x00000001 */ 21BITTGL( R1 , 1 ); /* r1 = 0x00000002 */ 22BITTGL( R2 , 2 ); /* r2 = 0x00000004 */ 23BITTGL( R3 , 3 ); /* r3 = 0x00000008 */ 24BITTGL( R4 , 4 ); /* r4 = 0x00000010 */ 25BITTGL( R5 , 5 ); /* r5 = 0x00000020 */ 26BITTGL( R6 , 6 ); /* r6 = 0x00000040 */ 27BITTGL( R7 , 7 ); /* r7 = 0x00000080 */ 28CHECKREG r0, 0x00000001; 29CHECKREG r1, 0x00000002; 30CHECKREG r2, 0x00000004; 31CHECKREG r3, 0x00000008; 32CHECKREG r4, 0x00000010; 33CHECKREG r5, 0x00000020; 34CHECKREG r6, 0x00000040; 35CHECKREG r7, 0x00000080; 36 37// bit 8-15 38BITTGL( R0 , 8 ); /* r0 = 0x00000100 */ 39BITTGL( R1 , 9 ); /* r1 = 0x00000200 */ 40BITTGL( R2 , 10 ); /* r2 = 0x00000400 */ 41BITTGL( R3 , 11 ); /* r3 = 0x00000800 */ 42BITTGL( R4 , 12 ); /* r4 = 0x00001000 */ 43BITTGL( R5 , 13 ); /* r5 = 0x00002000 */ 44BITTGL( R6 , 14 ); /* r6 = 0x00004000 */ 45BITTGL( R7 , 15 ); /* r7 = 0x00008000 */ 46CHECKREG r0, 0x00000101; 47CHECKREG r1, 0x00000202; 48CHECKREG r2, 0x00000404; 49CHECKREG r3, 0x00000808; 50CHECKREG r4, 0x00001010; 51CHECKREG r5, 0x00002020; 52CHECKREG r6, 0x00004040; 53CHECKREG r7, 0x00008080; 54 55// bit 16-23 56BITTGL( R0 , 16 ); /* r0 = 0x00000100 */ 57BITTGL( R1 , 17 ); /* r1 = 0x00000200 */ 58BITTGL( R2 , 18 ); /* r2 = 0x00000400 */ 59BITTGL( R3 , 19 ); /* r3 = 0x00000800 */ 60BITTGL( R4 , 20 ); /* r4 = 0x00001000 */ 61BITTGL( R5 , 21 ); /* r5 = 0x00002000 */ 62BITTGL( R6 , 22 ); /* r6 = 0x00004000 */ 63BITTGL( R7 , 23 ); /* r7 = 0x00008000 */ 64CHECKREG r0, 0x00010101; 65CHECKREG r1, 0x00020202; 66CHECKREG r2, 0x00040404; 67CHECKREG r3, 0x00080808; 68CHECKREG r4, 0x00101010; 69CHECKREG r5, 0x00202020; 70CHECKREG r6, 0x00404040; 71CHECKREG r7, 0x00808080; 72 73// bit 24-31 74BITTGL( R0 , 24 ); /* r0 = 0x00000100 */ 75BITTGL( R1 , 25 ); /* r1 = 0x00000200 */ 76BITTGL( R2 , 26 ); /* r2 = 0x00000400 */ 77BITTGL( R3 , 27 ); /* r3 = 0x00000800 */ 78BITTGL( R4 , 28 ); /* r4 = 0x00001000 */ 79BITTGL( R5 , 29 ); /* r5 = 0x00002000 */ 80BITTGL( R6 , 30 ); /* r6 = 0x00004000 */ 81BITTGL( R7 , 31 ); /* r7 = 0x00008000 */ 82CHECKREG r0, 0x01010101; 83CHECKREG r1, 0x02020202; 84CHECKREG r2, 0x04040404; 85CHECKREG r3, 0x08080808; 86CHECKREG r4, 0x10101010; 87CHECKREG r5, 0x20202020; 88CHECKREG r6, 0x40404040; 89CHECKREG r7, 0x80808080; 90 91// bit 0-7 92BITTGL( R0 , 0 ); /* r0 = 0x00000001 */ 93BITTGL( R1 , 1 ); /* r1 = 0x00000002 */ 94BITTGL( R2 , 2 ); /* r2 = 0x00000004 */ 95BITTGL( R3 , 3 ); /* r3 = 0x00000008 */ 96BITTGL( R4 , 4 ); /* r4 = 0x00000010 */ 97BITTGL( R5 , 5 ); /* r5 = 0x00000020 */ 98BITTGL( R6 , 6 ); /* r6 = 0x00000040 */ 99BITTGL( R7 , 7 ); /* r7 = 0x00000080 */ 100CHECKREG r0, 0x01010100; 101CHECKREG r1, 0x02020200; 102CHECKREG r2, 0x04040400; 103CHECKREG r3, 0x08080800; 104CHECKREG r4, 0x10101000; 105CHECKREG r5, 0x20202000; 106CHECKREG r6, 0x40404000; 107CHECKREG r7, 0x80808000; 108 109// bit 8-15 110BITTGL( R0 , 8 ); /* r0 = 0x00000100 */ 111BITTGL( R1 , 9 ); /* r1 = 0x00000200 */ 112BITTGL( R2 , 10 ); /* r2 = 0x00000400 */ 113BITTGL( R3 , 11 ); /* r3 = 0x00000800 */ 114BITTGL( R4 , 12 ); /* r4 = 0x00001000 */ 115BITTGL( R5 , 13 ); /* r5 = 0x00002000 */ 116BITTGL( R6 , 14 ); /* r6 = 0x00004000 */ 117BITTGL( R7 , 15 ); /* r7 = 0x00008000 */ 118CHECKREG r0, 0x01010000; 119CHECKREG r1, 0x02020000; 120CHECKREG r2, 0x04040000; 121CHECKREG r3, 0x08080000; 122CHECKREG r4, 0x10100000; 123CHECKREG r5, 0x20200000; 124CHECKREG r6, 0x40400000; 125CHECKREG r7, 0x80800000; 126 127// bit 16-23 128BITTGL( R0 , 16 ); /* r0 = 0x00000100 */ 129BITTGL( R1 , 17 ); /* r1 = 0x00000200 */ 130BITTGL( R2 , 18 ); /* r2 = 0x00000400 */ 131BITTGL( R3 , 19 ); /* r3 = 0x00000800 */ 132BITTGL( R4 , 20 ); /* r4 = 0x00001000 */ 133BITTGL( R5 , 21 ); /* r5 = 0x00002000 */ 134BITTGL( R6 , 22 ); /* r6 = 0x00004000 */ 135BITTGL( R7 , 23 ); /* r7 = 0x00008000 */ 136CHECKREG r0, 0x01000000; 137CHECKREG r1, 0x02000000; 138CHECKREG r2, 0x04000000; 139CHECKREG r3, 0x08000000; 140CHECKREG r4, 0x10000000; 141CHECKREG r5, 0x20000000; 142CHECKREG r6, 0x40000000; 143CHECKREG r7, 0x80000000; 144 145// bit 24-31 146BITTGL( R0 , 24 ); /* r0 = 0x00000100 */ 147BITTGL( R1 , 25 ); /* r1 = 0x00000200 */ 148BITTGL( R2 , 26 ); /* r2 = 0x00000400 */ 149BITTGL( R3 , 27 ); /* r3 = 0x00000800 */ 150BITTGL( R4 , 28 ); /* r4 = 0x00001000 */ 151BITTGL( R5 , 29 ); /* r5 = 0x00002000 */ 152BITTGL( R6 , 30 ); /* r6 = 0x00004000 */ 153BITTGL( R7 , 31 ); /* r7 = 0x00008000 */ 154CHECKREG r0, 0x00000000; 155CHECKREG r1, 0x00000000; 156CHECKREG r2, 0x00000000; 157CHECKREG r3, 0x00000000; 158CHECKREG r4, 0x00000000; 159CHECKREG r5, 0x00000000; 160CHECKREG r6, 0x00000000; 161CHECKREG r7, 0x00000000; 162 163 164 165pass 166