aboutsummaryrefslogtreecommitdiff
path: root/bfd/aoutx.h
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1994-06-13 18:25:12 +0000
committerIan Lance Taylor <ian@airs.com>1994-06-13 18:25:12 +0000
commit9ae74960a87e149d8deaa40ce0cfed81486ae160 (patch)
treecfad0efc29a49c18ebd843441b6a0254679a17fd /bfd/aoutx.h
parenta5183648b2eff855d0c4f7883408c9249ecfdf15 (diff)
downloadgdb-9ae74960a87e149d8deaa40ce0cfed81486ae160.zip
gdb-9ae74960a87e149d8deaa40ce0cfed81486ae160.tar.gz
gdb-9ae74960a87e149d8deaa40ce0cfed81486ae160.tar.bz2
* aoutf1.h (aout_32_sunos4_write_object_contents): Handle a
machine type of 68000. * aoutx.h (NAME(aout,machine_type)): Add new argument unknown. Set *unknown to true if machine type is really unknown, as opposed to M_UNKNOWN for the 68000. (NAME(aout,set_arch_mach)): Change NAME(aout,machine_type) call accordingly. * libaout.h (NAME(aout,machine_type)): Add new argument to prototype.
Diffstat (limited to 'bfd/aoutx.h')
-rw-r--r--bfd/aoutx.h21
1 files changed, 16 insertions, 5 deletions
diff --git a/bfd/aoutx.h b/bfd/aoutx.h
index 742f79d..dcee1fa 100644
--- a/bfd/aoutx.h
+++ b/bfd/aoutx.h
@@ -625,13 +625,15 @@ DESCRIPTION
*/
enum machine_type
-NAME(aout,machine_type) (arch, machine)
+NAME(aout,machine_type) (arch, machine, unknown)
enum bfd_architecture arch;
unsigned long machine;
+ boolean *unknown;
{
enum machine_type arch_flags;
arch_flags = M_UNKNOWN;
+ *unknown = true;
switch (arch) {
case bfd_arch_sparc:
@@ -641,7 +643,7 @@ NAME(aout,machine_type) (arch, machine)
case bfd_arch_m68k:
switch (machine) {
case 0: arch_flags = M_68010; break;
- case 68000: arch_flags = M_UNKNOWN; break;
+ case 68000: arch_flags = M_UNKNOWN; *unknown = false; break;
case 68010: arch_flags = M_68010; break;
case 68020: arch_flags = M_68020; break;
default: arch_flags = M_UNKNOWN; break;
@@ -671,6 +673,10 @@ NAME(aout,machine_type) (arch, machine)
default:
arch_flags = M_UNKNOWN;
}
+
+ if (arch_flags != M_UNKNOWN)
+ *unknown = false;
+
return arch_flags;
}
@@ -700,9 +706,14 @@ NAME(aout,set_arch_mach) (abfd, arch, machine)
if (! bfd_default_set_arch_mach (abfd, arch, machine))
return false;
- if (arch != bfd_arch_unknown &&
- NAME(aout,machine_type) (arch, machine) == M_UNKNOWN)
- return false; /* We can't represent this type */
+ if (arch != bfd_arch_unknown)
+ {
+ boolean unknown;
+
+ NAME(aout,machine_type) (arch, machine, &unknown);
+ if (unknown)
+ return false;
+ }
/* Determine the size of a relocation entry */
switch (arch) {