1 /** Tests covering the shift operators.
11 pending - 1792, 851968, 1560281088, -3, -1792, -851968, -1560000000
16 test1ShiftClasses(void)
18 {attr} {storage} {sign} {type} i, result;
30 ASSERT(result == 120);
36 {attr} {storage} {type} i, result;
49 ASSERT(result == -15);
53 test3ShiftByteMultiples(void)
55 {attr} {storage} {type} i;
58 ASSERT(i>>8 == ({type})({vals} >> 8));
59 ASSERT(i>>16 == ({type})({vals} >> 16));
60 ASSERT(i>>24 == ({type})({vals} >> 24));
63 ASSERT( ({type})(i<<8) == ({type})({vals} << 8));;
64 ASSERT((({type}) i<<16) == (({type}) {vals} << 16));
65 ASSERT((({type}) i<<24) == (({type}) {vals} << 24));
71 {attr} {storage} {sign} {type} i;
77 ASSERT(result == ({type})(({type}){vals} >> 1));
81 ASSERT(result == ({type})(({type}){vals} >> 1));
84 ASSERT(result == ({type})(({type}){vals} << 1));
88 ASSERT(result == ({type})(({type}){vals} << 1));
91 static {type} ShiftLeftByParam ({type} count)
93 {attr} {storage} {type} i;
98 static {type} ShiftRightByParam ({type} count)
100 {attr} {storage} {type} i;
106 testShiftByParam(void)
108 ASSERT(ShiftLeftByParam(2) == ({type})({vals} << 2));
109 ASSERT(ShiftRightByParam(2) == ({type})({vals} >> 2));