static const bfd_arch_info_type * bfd_i386_compatible (const bfd_arch_info_type *a, const bfd_arch_info_type *b) { const bfd_arch_info_type *compat = bfd_default_compatible (a, b); /* Don't allow mixing x64_32 with x86_64. */ if (compat && a->bits_per_address != b->bits_per_address) compat = NULL; return compat; }
static const bfd_arch_info_type * bfd_i386_compatible (const bfd_arch_info_type *a, const bfd_arch_info_type *b) { const bfd_arch_info_type *compat = bfd_default_compatible (a, b); /* Don't allow mixing x64_32 with x86_64. */ if (compat && (a->mach & bfd_mach_x64_32) != (b->mach & bfd_mach_x64_32)) compat = NULL; return compat; }
static const bfd_arch_info_type * spu_compatible (const bfd_arch_info_type *a, const bfd_arch_info_type *b) { BFD_ASSERT (a->arch == bfd_arch_spu); switch (b->arch) { default: return NULL; case bfd_arch_spu: return bfd_default_compatible (a, b); } /*NOTREACHED*/ }
static const bfd_arch_info_type * rs6000_compatible (const bfd_arch_info_type *a, const bfd_arch_info_type *b) { BFD_ASSERT (a->arch == bfd_arch_rs6000); switch (b->arch) { default: return NULL; case bfd_arch_rs6000: return bfd_default_compatible (a, b); case bfd_arch_powerpc: if (a->mach == bfd_mach_rs6k) return b; return NULL; } /*NOTREACHED*/ }