1f08c3bdfSopenharmony_ci#include "symbol.h" 2f08c3bdfSopenharmony_ci#include "target.h" 3f08c3bdfSopenharmony_ci#include "machine.h" 4f08c3bdfSopenharmony_ci 5f08c3bdfSopenharmony_ci 6f08c3bdfSopenharmony_cistatic void init_sh(const struct target *self) 7f08c3bdfSopenharmony_ci{ 8f08c3bdfSopenharmony_ci int64_ctype = &llong_ctype; 9f08c3bdfSopenharmony_ci uint64_ctype = &ullong_ctype; 10f08c3bdfSopenharmony_ci intptr_ctype = &int_ctype; 11f08c3bdfSopenharmony_ci uintptr_ctype = &uint_ctype; 12f08c3bdfSopenharmony_ci 13f08c3bdfSopenharmony_ci fast16_ctype = &int_ctype; 14f08c3bdfSopenharmony_ci ufast16_ctype = &uint_ctype; 15f08c3bdfSopenharmony_ci fast32_ctype = &int_ctype; 16f08c3bdfSopenharmony_ci ufast32_ctype = &uint_ctype; 17f08c3bdfSopenharmony_ci 18f08c3bdfSopenharmony_ci wchar_ctype = &long_ctype; 19f08c3bdfSopenharmony_ci} 20f08c3bdfSopenharmony_ci 21f08c3bdfSopenharmony_cistatic void predefine_sh(const struct target *self) 22f08c3bdfSopenharmony_ci{ 23f08c3bdfSopenharmony_ci predefine_weak("__SH4__"); 24f08c3bdfSopenharmony_ci predefine_weak("__sh__"); 25f08c3bdfSopenharmony_ci} 26f08c3bdfSopenharmony_ci 27f08c3bdfSopenharmony_ciconst struct target target_sh = { 28f08c3bdfSopenharmony_ci .mach = MACH_SH, 29f08c3bdfSopenharmony_ci .bitness = ARCH_LP32, 30f08c3bdfSopenharmony_ci .big_endian = false, 31f08c3bdfSopenharmony_ci 32f08c3bdfSopenharmony_ci .bits_in_longdouble = 64, 33f08c3bdfSopenharmony_ci 34f08c3bdfSopenharmony_ci .init = init_sh, 35f08c3bdfSopenharmony_ci .predefine = predefine_sh, 36f08c3bdfSopenharmony_ci}; 37