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