+
+void
+testSignedBitfields(void)
+{
+ s_bf.s0_7 = 0xf0;
+ s_bf.s7_1 = 1;
+ s_bf.s8_9 = 0xfff8;
+ ASSERT(s_bf.s0_7 == -16);
+ ASSERT(s_bf.s7_1 == - 1);
+ ASSERT(s_bf.s8_9 == - 8);
+ ASSERT(s_bf.s0_7 < 0);
+ ASSERT(s_bf.s7_1 < 0);
+ ASSERT(s_bf.s8_9 < 0);
+
+ s_bf.s0_7 = 0x3f;
+ s_bf.s7_1 = 2;
+ s_bf.s8_9 = 0x00ff;
+ ASSERT(s_bf.s0_7 == 0x3f);
+ ASSERT(s_bf.s7_1 == 0);
+ ASSERT(s_bf.s8_9 == 0xff);
+ ASSERT(s_bf.s0_7 > 0);
+ ASSERT(s_bf.s8_9 > 0);
+}