* archures.c (bfd_lookup_arch): Add comment on list order.
(bfd_default_set_arch_mach): Use bfd_lookup_arch. * cpu-powerpc.c (bfd_powerpc_archs): Re-order so that the default is always at head of list.
This commit is contained in:
parent
73d322b1b9
commit
99dc00929f
3 changed files with 83 additions and 55 deletions
|
@ -1,3 +1,10 @@
|
|||
2002-04-20 Alan Modra <amodra@bigpond.net.au>
|
||||
|
||||
* archures.c (bfd_lookup_arch): Add comment on list order.
|
||||
(bfd_default_set_arch_mach): Use bfd_lookup_arch.
|
||||
* cpu-powerpc.c (bfd_powerpc_archs): Re-order so that the default
|
||||
is always at head of list.
|
||||
|
||||
2002-04-18 Nick Clifton <nickc@cambridge.redhat.com>
|
||||
|
||||
* coff-arm.c (coff_thumb_pcrel_12, coff_thumb_pcrel_9,
|
||||
|
|
|
@ -604,21 +604,9 @@ bfd_default_set_arch_mach (abfd, arch, mach)
|
|||
enum bfd_architecture arch;
|
||||
unsigned long mach;
|
||||
{
|
||||
const bfd_arch_info_type * const *app, *ap;
|
||||
|
||||
for (app = bfd_archures_list; *app != NULL; app++)
|
||||
{
|
||||
for (ap = *app; ap != NULL; ap = ap->next)
|
||||
{
|
||||
if (ap->arch == arch
|
||||
&& (ap->mach == mach
|
||||
|| (mach == 0 && ap->the_default)))
|
||||
{
|
||||
abfd->arch_info = ap;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
abfd->arch_info = bfd_lookup_arch (arch, mach);
|
||||
if (abfd->arch_info != NULL)
|
||||
return true;
|
||||
|
||||
abfd->arch_info = &bfd_default_arch_struct;
|
||||
bfd_set_error (bfd_error_bad_value);
|
||||
|
@ -985,7 +973,9 @@ DESCRIPTION
|
|||
Look for the architecure info structure which matches the
|
||||
arguments @var{arch} and @var{machine}. A machine of 0 matches the
|
||||
machine/architecture structure which marks itself as the
|
||||
default.
|
||||
default. gdb relies on the default arch being the first
|
||||
entry for the given ARCH so that all the entries for that
|
||||
arch can be accessed via ap->next.
|
||||
*/
|
||||
|
||||
const bfd_arch_info_type *
|
||||
|
|
|
@ -50,6 +50,65 @@ powerpc_compatible (a,b)
|
|||
|
||||
const bfd_arch_info_type bfd_powerpc_archs[] =
|
||||
{
|
||||
#if BFD_DEFAULT_TARGET_SIZE == 64 /* default arch must come first. */
|
||||
{
|
||||
64, /* 64 bits in a word */
|
||||
64, /* 64 bits in an address */
|
||||
8, /* 8 bits in a byte */
|
||||
bfd_arch_powerpc,
|
||||
bfd_mach_ppc64,
|
||||
"powerpc",
|
||||
"powerpc:common64",
|
||||
3,
|
||||
true, /* default for 64 bit target */
|
||||
powerpc_compatible,
|
||||
bfd_default_scan,
|
||||
&bfd_powerpc_archs[1]
|
||||
},
|
||||
{
|
||||
32, /* 32 bits in a word */
|
||||
32, /* 32 bits in an address */
|
||||
8, /* 8 bits in a byte */
|
||||
bfd_arch_powerpc,
|
||||
bfd_mach_ppc, /* for the POWER/PowerPC common architecture */
|
||||
"powerpc",
|
||||
"powerpc:common",
|
||||
3,
|
||||
false,
|
||||
powerpc_compatible,
|
||||
bfd_default_scan,
|
||||
&bfd_powerpc_archs[2],
|
||||
},
|
||||
#else
|
||||
{
|
||||
32, /* 32 bits in a word */
|
||||
32, /* 32 bits in an address */
|
||||
8, /* 8 bits in a byte */
|
||||
bfd_arch_powerpc,
|
||||
bfd_mach_ppc, /* for the POWER/PowerPC common architecture */
|
||||
"powerpc",
|
||||
"powerpc:common",
|
||||
3,
|
||||
true, /* default for 32 bit target */
|
||||
powerpc_compatible,
|
||||
bfd_default_scan,
|
||||
&bfd_powerpc_archs[1],
|
||||
},
|
||||
{
|
||||
64, /* 64 bits in a word */
|
||||
64, /* 64 bits in an address */
|
||||
8, /* 8 bits in a byte */
|
||||
bfd_arch_powerpc,
|
||||
bfd_mach_ppc64,
|
||||
"powerpc",
|
||||
"powerpc:common64",
|
||||
3,
|
||||
false,
|
||||
powerpc_compatible,
|
||||
bfd_default_scan,
|
||||
&bfd_powerpc_archs[2]
|
||||
},
|
||||
#endif
|
||||
{
|
||||
32, /* 32 bits in a word */
|
||||
32, /* 32 bits in an address */
|
||||
|
@ -62,7 +121,7 @@ const bfd_arch_info_type bfd_powerpc_archs[] =
|
|||
false, /* not the default */
|
||||
powerpc_compatible,
|
||||
bfd_default_scan,
|
||||
&bfd_powerpc_archs[1]
|
||||
&bfd_powerpc_archs[3]
|
||||
},
|
||||
{
|
||||
32, /* 32 bits in a word */
|
||||
|
@ -76,7 +135,7 @@ const bfd_arch_info_type bfd_powerpc_archs[] =
|
|||
false, /* not the default */
|
||||
powerpc_compatible,
|
||||
bfd_default_scan,
|
||||
&bfd_powerpc_archs[2]
|
||||
&bfd_powerpc_archs[4]
|
||||
},
|
||||
{
|
||||
32, /* 32 bits in a word */
|
||||
|
@ -90,7 +149,7 @@ const bfd_arch_info_type bfd_powerpc_archs[] =
|
|||
false, /* not the default */
|
||||
powerpc_compatible,
|
||||
bfd_default_scan,
|
||||
&bfd_powerpc_archs[3]
|
||||
&bfd_powerpc_archs[5]
|
||||
},
|
||||
{
|
||||
32, /* 32 bits in a word */
|
||||
|
@ -104,7 +163,7 @@ const bfd_arch_info_type bfd_powerpc_archs[] =
|
|||
false, /* not the default */
|
||||
powerpc_compatible,
|
||||
bfd_default_scan,
|
||||
&bfd_powerpc_archs[4]
|
||||
&bfd_powerpc_archs[6]
|
||||
},
|
||||
{
|
||||
32, /* 32 bits in a word */
|
||||
|
@ -118,7 +177,7 @@ const bfd_arch_info_type bfd_powerpc_archs[] =
|
|||
false, /* not the default */
|
||||
powerpc_compatible,
|
||||
bfd_default_scan,
|
||||
&bfd_powerpc_archs[5]
|
||||
&bfd_powerpc_archs[7]
|
||||
},
|
||||
{
|
||||
64, /* 64 bits in a word */
|
||||
|
@ -132,7 +191,7 @@ const bfd_arch_info_type bfd_powerpc_archs[] =
|
|||
false, /* not the default */
|
||||
powerpc_compatible,
|
||||
bfd_default_scan,
|
||||
&bfd_powerpc_archs[6]
|
||||
&bfd_powerpc_archs[8]
|
||||
},
|
||||
{
|
||||
64, /* 64 bits in a word */
|
||||
|
@ -146,7 +205,7 @@ const bfd_arch_info_type bfd_powerpc_archs[] =
|
|||
false, /* not the default */
|
||||
powerpc_compatible,
|
||||
bfd_default_scan,
|
||||
&bfd_powerpc_archs[7]
|
||||
&bfd_powerpc_archs[9]
|
||||
},
|
||||
{
|
||||
64, /* 64 bits in a word */
|
||||
|
@ -160,7 +219,7 @@ const bfd_arch_info_type bfd_powerpc_archs[] =
|
|||
false, /* not the default */
|
||||
powerpc_compatible,
|
||||
bfd_default_scan,
|
||||
&bfd_powerpc_archs[8]
|
||||
&bfd_powerpc_archs[10]
|
||||
},
|
||||
{
|
||||
64, /* 64 bits in a word */
|
||||
|
@ -174,7 +233,7 @@ const bfd_arch_info_type bfd_powerpc_archs[] =
|
|||
false, /* not the default */
|
||||
powerpc_compatible,
|
||||
bfd_default_scan,
|
||||
&bfd_powerpc_archs[9]
|
||||
&bfd_powerpc_archs[11]
|
||||
},
|
||||
{
|
||||
64, /* 64 bits in a word */
|
||||
|
@ -188,7 +247,7 @@ const bfd_arch_info_type bfd_powerpc_archs[] =
|
|||
false, /* not the default */
|
||||
powerpc_compatible,
|
||||
bfd_default_scan,
|
||||
&bfd_powerpc_archs[10]
|
||||
&bfd_powerpc_archs[12]
|
||||
},
|
||||
{
|
||||
32, /* 32 bits in a word */
|
||||
|
@ -202,7 +261,7 @@ const bfd_arch_info_type bfd_powerpc_archs[] =
|
|||
false, /* not the default */
|
||||
powerpc_compatible,
|
||||
bfd_default_scan,
|
||||
&bfd_powerpc_archs[11]
|
||||
&bfd_powerpc_archs[13]
|
||||
},
|
||||
{
|
||||
32, /* 32 bits in a word */
|
||||
|
@ -216,34 +275,6 @@ const bfd_arch_info_type bfd_powerpc_archs[] =
|
|||
false, /* not the default */
|
||||
powerpc_compatible,
|
||||
bfd_default_scan,
|
||||
&bfd_powerpc_archs[12]
|
||||
},
|
||||
{
|
||||
64, /* 64 bits in a word */
|
||||
64, /* 64 bits in an address */
|
||||
8, /* 8 bits in a byte */
|
||||
bfd_arch_powerpc,
|
||||
bfd_mach_ppc64,
|
||||
"powerpc",
|
||||
"powerpc:common64",
|
||||
3,
|
||||
BFD_DEFAULT_TARGET_SIZE == 64, /* default for 64 bit target */
|
||||
powerpc_compatible,
|
||||
bfd_default_scan,
|
||||
&bfd_powerpc_archs[13]
|
||||
},
|
||||
{
|
||||
32, /* 32 bits in a word */
|
||||
32, /* 32 bits in an address */
|
||||
8, /* 8 bits in a byte */
|
||||
bfd_arch_powerpc,
|
||||
bfd_mach_ppc, /* for the POWER/PowerPC common architecture */
|
||||
"powerpc",
|
||||
"powerpc:common",
|
||||
3,
|
||||
BFD_DEFAULT_TARGET_SIZE != 64, /* default for 32 bit target */
|
||||
powerpc_compatible,
|
||||
bfd_default_scan,
|
||||
0
|
||||
}
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue