019c872f98b0c66c5d1f1b45d962103b37d7424e
[libfirm] / ir / be / test / bf_init.c
1 #include "dumpmem.h"
2
3 struct bf {
4         int a;
5         unsigned x:13;
6         unsigned y:17;
7         unsigned z:3;
8         char c;
9         double d;
10         unsigned w:9;
11 };
12
13 struct bf mybf = { 0xffffffff, 4097, 65537, 5, 0xff, 4.5, 257 };
14
15 int main(int argc, char **argv) {
16
17         if(argc > 1) {
18                 dumpMem(&mybf, sizeof mybf);
19                 printf("sizeof mybf %d\n", sizeof mybf);
20         }
21
22         printf("int a (expected -1): %d\n", mybf.a);
23         printf("unsigned x:13 (expected 4097): %u\n", mybf.x);
24         printf("unsigned y:17 (expected 65537): %u\n", mybf.y);
25         printf("unsigned y:3 (expected 5): %u\n", mybf.z);
26         printf("char c (expected ff): %x\n", mybf.c);
27         printf("double d (expected 4.5): %.1f\n", mybf.d);
28         printf("unsigned w:9 (expected 257): %u\n", mybf.w);
29
30         return 0;
31 }