dereferences_param: mark more parameters as dereferenced
[smatch.git] / target-sparc.c
blobbd48effe3acfda6fdd11ceda6a1cd9ede7a686b3
1 #include "symbol.h"
2 #include "target.h"
3 #include "machine.h"
6 static void predefine_sparc(const struct target *self)
8 predefine("__sparc__", 1, "1");
9 predefine("__sparc", 1, "1");
10 predefine_nostd("sparc");
14 static void init_sparc32(const struct target *target)
16 if (arch_os == OS_SUNOS) {
17 wint_ctype = &long_ctype;
18 wchar_ctype = &long_ctype;
20 bits_in_longdouble = 128;
21 max_fp_alignment = 16;
25 static void predefine_sparc32(const struct target *self)
27 predefine_sparc(self);
30 const struct target target_sparc32 = {
31 .mach = MACH_SPARC32,
32 .bitness = ARCH_LP32,
33 .big_endian = 1,
34 .unsigned_char = 0,
36 .bits_in_longdouble = 64,
37 .max_fp_alignment = 8,
39 .init = init_sparc32,
40 .target_64bit = &target_sparc64,
42 .predefine = predefine_sparc32,
46 static void predefine_sparc64(const struct target *self)
48 predefine("__sparc_v9__", 1, "1");
49 predefine("__sparcv9__", 1, "1");
50 predefine("__sparcv9", 1, "1");
51 predefine("__sparc64__", 1, "1");
52 predefine("__arch64__", 1, "1");
54 predefine_sparc(self);
57 const struct target target_sparc64 = {
58 .mach = MACH_SPARC64,
59 .bitness = ARCH_LP64,
60 .big_endian = 1,
61 .unsigned_char = 0,
62 .has_int128 = 1,
64 .target_32bit = &target_sparc32,
66 .predefine = predefine_sparc64,