xref: /illumos-gate/usr/src/tools/smatch/src/target.c (revision 1b58875ad7966cf2c85ee8e92f3da04f0a3b2f7a)
1 #include <stdio.h>
2 
3 #include "symbol.h"
4 #include "target.h"
5 
6 struct symbol *size_t_ctype = &ulong_ctype;
7 struct symbol *ssize_t_ctype = &long_ctype;
8 
9 /*
10  * For "__attribute__((aligned))"
11  */
12 int max_alignment = 16;
13 
14 /*
15  * Integer data types
16  */
17 int bits_in_bool = 1;
18 int bits_in_char = 8;
19 int bits_in_short = 16;
20 int bits_in_int = 32;
21 int bits_in_long = 32;
22 int bits_in_longlong = 64;
23 int bits_in_longlonglong = 128;
24 
25 int bits_in_wchar = 32;
26 
27 int max_int_alignment = 4;
28 
29 /*
30  * Floating point data types
31  */
32 int bits_in_float = 32;
33 int bits_in_double = 64;
34 int bits_in_longdouble = 80;
35 
36 int max_fp_alignment = 8;
37 
38 /*
39  * Pointer data type
40  */
41 int bits_in_pointer = 32;
42 int pointer_alignment = 4;
43 
44 /*
45  * Enum data types
46  */
47 int bits_in_enum = 32;
48 int enum_alignment = 4;
49