6 static int sparc_version
;
8 static void predefine_sparc(const struct target
*self
)
10 predefine("__sparc__", 1, "1");
11 predefine("__sparc", 1, "1");
12 predefine_nostd("sparc");
14 predefine_weak("__sparc_v%d__", sparc_version
);
15 predefine_weak("__sparcv%d__", sparc_version
);
16 predefine_weak("__sparcv%d", sparc_version
);
20 static void init_sparc32(const struct target
*target
)
22 fast16_ctype
= &int_ctype
;
23 ufast16_ctype
= &uint_ctype
;
24 fast32_ctype
= &int_ctype
;
25 ufast32_ctype
= &uint_ctype
;
30 if (arch_os
== OS_SUNOS
) {
31 wint_ctype
= &long_ctype
;
32 wchar_ctype
= &long_ctype
;
34 bits_in_longdouble
= 128;
35 max_fp_alignment
= 16;
41 static void predefine_sparc32(const struct target
*self
)
43 predefine_sparc(self
);
46 const struct target target_sparc32
= {
52 .bits_in_longdouble
= 64,
53 .max_fp_alignment
= 8,
56 .target_64bit
= &target_sparc64
,
58 .predefine
= predefine_sparc32
,
62 static void init_sparc64(const struct target
*target
)
68 static void predefine_sparc64(const struct target
*self
)
70 predefine("__sparc64__", 1, "1");
71 predefine("__arch64__", 1, "1");
73 predefine_sparc(self
);
76 const struct target target_sparc64
= {
83 .target_32bit
= &target_sparc32
,
86 .predefine
= predefine_sparc64
,