1/* BFD support for the Intel 386 architecture.
2   Copyright 1992, 1994, 1995, 1996, 1998, 2000, 2001, 2002, 2004, 2007
3   Free Software Foundation, Inc.
4
5This file is part of BFD, the Binary File Descriptor library.
6
7This program is free software; you can redistribute it and/or modify
8it under the terms of the GNU General Public License as published by
9the Free Software Foundation; either version 2 of the License, or
10(at your option) any later version.
11
12This program is distributed in the hope that it will be useful,
13but WITHOUT ANY WARRANTY; without even the implied warranty of
14MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15GNU General Public License for more details.
16
17You should have received a copy of the GNU General Public License
18along with this program; if not, write to the Free Software
19Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.  */
20
21#include "sysdep.h"
22#include "bfd.h"
23#include "libbfd.h"
24
25const bfd_arch_info_type bfd_x86_64_arch_intel_syntax =
26{
27  64, /* 64 bits in a word */
28  64, /* 64 bits in an address */
29  8,  /* 8 bits in a byte */
30  bfd_arch_i386,
31  bfd_mach_x86_64_intel_syntax,
32  "i386:intel",
33  "i386:x86-64:intel",
34  3,
35  FALSE,
36  bfd_default_compatible,
37  bfd_default_scan,
38  0
39};
40
41const bfd_arch_info_type bfd_i386_arch_intel_syntax =
42{
43  32,	/* 32 bits in a word */
44  32,	/* 32 bits in an address */
45  8,	/* 8 bits in a byte */
46  bfd_arch_i386,
47  bfd_mach_i386_i386_intel_syntax,
48  "i386:intel",
49  "i386:intel",
50  3,
51  TRUE,
52  bfd_default_compatible,
53  bfd_default_scan,
54  &bfd_x86_64_arch_intel_syntax
55};
56
57const bfd_arch_info_type i8086_arch =
58{
59  32,	/* 32 bits in a word */
60  32,	/* 32 bits in an address (well, not really) */
61  8,	/* 8 bits in a byte */
62  bfd_arch_i386,
63  bfd_mach_i386_i8086,
64  "i8086",
65  "i8086",
66  3,
67  FALSE,
68  bfd_default_compatible,
69  bfd_default_scan,
70  &bfd_i386_arch_intel_syntax
71};
72
73const bfd_arch_info_type bfd_x86_64_arch =
74{
75  64, /* 32 bits in a word */
76  64, /* 32 bits in an address */
77  8,  /* 8 bits in a byte */
78  bfd_arch_i386,
79  bfd_mach_x86_64,
80  "i386",
81  "i386:x86-64",
82  3,
83  FALSE,
84  bfd_default_compatible,
85  bfd_default_scan,
86  &i8086_arch
87};
88
89const bfd_arch_info_type bfd_i386_arch =
90{
91  32,	/* 32 bits in a word */
92  32,	/* 32 bits in an address */
93  8,	/* 8 bits in a byte */
94  bfd_arch_i386,
95  bfd_mach_i386_i386,
96  "i386",
97  "i386",
98  3,
99  TRUE,
100  bfd_default_compatible,
101  bfd_default_scan,
102  &bfd_x86_64_arch
103};
104