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 }; 105