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