1a85fe12eSEd Maste /*- 2a85fe12eSEd Maste * Copyright (c) 2008,2009 Kai Wang 3a85fe12eSEd Maste * All rights reserved. 4a85fe12eSEd Maste * 5a85fe12eSEd Maste * Redistribution and use in source and binary forms, with or without 6a85fe12eSEd Maste * modification, are permitted provided that the following conditions 7a85fe12eSEd Maste * are met: 8a85fe12eSEd Maste * 1. Redistributions of source code must retain the above copyright 9a85fe12eSEd Maste * notice, this list of conditions and the following disclaimer 10a85fe12eSEd Maste * in this position and unchanged. 11a85fe12eSEd Maste * 2. Redistributions in binary form must reproduce the above copyright 12a85fe12eSEd Maste * notice, this list of conditions and the following disclaimer in the 13a85fe12eSEd Maste * documentation and/or other materials provided with the distribution. 14a85fe12eSEd Maste * 15a85fe12eSEd Maste * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR 16a85fe12eSEd Maste * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 17a85fe12eSEd Maste * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 18a85fe12eSEd Maste * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, 19a85fe12eSEd Maste * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 20a85fe12eSEd Maste * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21a85fe12eSEd Maste * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22a85fe12eSEd Maste * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23a85fe12eSEd Maste * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 24a85fe12eSEd Maste * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25a85fe12eSEd Maste */ 26a85fe12eSEd Maste 27a85fe12eSEd Maste #include <sys/param.h> 28a85fe12eSEd Maste #include <libelf.h> 29a85fe12eSEd Maste #include <libelftc.h> 30a85fe12eSEd Maste 31a85fe12eSEd Maste #include "_libelftc.h" 32a85fe12eSEd Maste 33b6d812d2SEd Maste ELFTC_VCSID("$Id: libelftc_bfdtarget.c 3488 2016-08-24 18:15:57Z emaste $"); 34a85fe12eSEd Maste 35a85fe12eSEd Maste struct _Elftc_Bfd_Target _libelftc_targets[] = { 36a85fe12eSEd Maste 37a85fe12eSEd Maste { 38a85fe12eSEd Maste .bt_name = "binary", 39a85fe12eSEd Maste .bt_type = ETF_BINARY, 40a85fe12eSEd Maste }, 41a85fe12eSEd Maste 42a85fe12eSEd Maste { 43a85fe12eSEd Maste .bt_name = "elf32-avr", 44a85fe12eSEd Maste .bt_type = ETF_ELF, 45a85fe12eSEd Maste .bt_byteorder = ELFDATA2LSB, 46a85fe12eSEd Maste .bt_elfclass = ELFCLASS32, 47a85fe12eSEd Maste .bt_machine = EM_AVR, 48a85fe12eSEd Maste }, 49a85fe12eSEd Maste 50a85fe12eSEd Maste { 51a85fe12eSEd Maste .bt_name = "elf32-big", 52a85fe12eSEd Maste .bt_type = ETF_ELF, 53a85fe12eSEd Maste .bt_byteorder = ELFDATA2MSB, 54a85fe12eSEd Maste .bt_elfclass = ELFCLASS32, 55a85fe12eSEd Maste }, 56a85fe12eSEd Maste 57a85fe12eSEd Maste { 58a85fe12eSEd Maste .bt_name = "elf32-bigarm", 59a85fe12eSEd Maste .bt_type = ETF_ELF, 60a85fe12eSEd Maste .bt_byteorder = ELFDATA2MSB, 61a85fe12eSEd Maste .bt_elfclass = ELFCLASS32, 62a85fe12eSEd Maste .bt_machine = EM_ARM, 63a85fe12eSEd Maste }, 64a85fe12eSEd Maste 65a85fe12eSEd Maste { 66a85fe12eSEd Maste .bt_name = "elf32-bigmips", 67a85fe12eSEd Maste .bt_type = ETF_ELF, 68a85fe12eSEd Maste .bt_byteorder = ELFDATA2MSB, 69a85fe12eSEd Maste .bt_elfclass = ELFCLASS32, 70a85fe12eSEd Maste .bt_machine = EM_MIPS, 71a85fe12eSEd Maste }, 72a85fe12eSEd Maste 73a85fe12eSEd Maste { 74a85fe12eSEd Maste .bt_name = "elf32-i386", 75a85fe12eSEd Maste .bt_type = ETF_ELF, 76a85fe12eSEd Maste .bt_byteorder = ELFDATA2LSB, 77a85fe12eSEd Maste .bt_elfclass = ELFCLASS32, 78a85fe12eSEd Maste .bt_machine = EM_386, 79a85fe12eSEd Maste }, 80a85fe12eSEd Maste 81a85fe12eSEd Maste { 82a85fe12eSEd Maste .bt_name = "elf32-i386-freebsd", 83a85fe12eSEd Maste .bt_type = ETF_ELF, 84a85fe12eSEd Maste .bt_byteorder = ELFDATA2LSB, 85a85fe12eSEd Maste .bt_elfclass = ELFCLASS32, 86a85fe12eSEd Maste .bt_machine = EM_386, 87a85fe12eSEd Maste .bt_osabi = ELFOSABI_FREEBSD, 88a85fe12eSEd Maste }, 89a85fe12eSEd Maste 90a85fe12eSEd Maste { 91a85fe12eSEd Maste .bt_name = "elf32-ia64-big", 92a85fe12eSEd Maste .bt_type = ETF_ELF, 93a85fe12eSEd Maste .bt_byteorder = ELFDATA2MSB, 94a85fe12eSEd Maste .bt_elfclass = ELFCLASS32, 95a85fe12eSEd Maste .bt_machine = EM_IA_64, 96a85fe12eSEd Maste }, 97a85fe12eSEd Maste 98a85fe12eSEd Maste { 99a85fe12eSEd Maste .bt_name = "elf32-little", 100a85fe12eSEd Maste .bt_type = ETF_ELF, 101a85fe12eSEd Maste .bt_byteorder = ELFDATA2LSB, 102a85fe12eSEd Maste .bt_elfclass = ELFCLASS32, 103a85fe12eSEd Maste }, 104a85fe12eSEd Maste 105a85fe12eSEd Maste { 106a85fe12eSEd Maste .bt_name = "elf32-littlearm", 107a85fe12eSEd Maste .bt_type = ETF_ELF, 108a85fe12eSEd Maste .bt_byteorder = ELFDATA2LSB, 109a85fe12eSEd Maste .bt_elfclass = ELFCLASS32, 110a85fe12eSEd Maste .bt_machine = EM_ARM, 111a85fe12eSEd Maste }, 112a85fe12eSEd Maste 113a85fe12eSEd Maste { 114a85fe12eSEd Maste .bt_name = "elf32-littlemips", 115a85fe12eSEd Maste .bt_type = ETF_ELF, 116a85fe12eSEd Maste .bt_byteorder = ELFDATA2LSB, 117a85fe12eSEd Maste .bt_elfclass = ELFCLASS32, 118a85fe12eSEd Maste .bt_machine = EM_MIPS, 119a85fe12eSEd Maste }, 120a85fe12eSEd Maste 121a85fe12eSEd Maste { 122a85fe12eSEd Maste .bt_name = "elf32-powerpc", 123a85fe12eSEd Maste .bt_type = ETF_ELF, 124a85fe12eSEd Maste .bt_byteorder = ELFDATA2MSB, 125a85fe12eSEd Maste .bt_elfclass = ELFCLASS32, 126a85fe12eSEd Maste .bt_machine = EM_PPC, 127a85fe12eSEd Maste }, 128a85fe12eSEd Maste 129a85fe12eSEd Maste { 130a85fe12eSEd Maste .bt_name = "elf32-powerpcle", 131a85fe12eSEd Maste .bt_type = ETF_ELF, 132a85fe12eSEd Maste .bt_byteorder = ELFDATA2LSB, 133a85fe12eSEd Maste .bt_elfclass = ELFCLASS32, 134a85fe12eSEd Maste .bt_machine = EM_PPC, 135a85fe12eSEd Maste }, 136a85fe12eSEd Maste 137a85fe12eSEd Maste { 138a85fe12eSEd Maste .bt_name = "elf32-sh", 139a85fe12eSEd Maste .bt_type = ETF_ELF, 140a85fe12eSEd Maste .bt_byteorder = ELFDATA2MSB, 141a85fe12eSEd Maste .bt_elfclass = ELFCLASS32, 142a85fe12eSEd Maste .bt_machine = EM_SH, 143a85fe12eSEd Maste }, 144a85fe12eSEd Maste 145a85fe12eSEd Maste { 146a85fe12eSEd Maste .bt_name = "elf32-shl", 147a85fe12eSEd Maste .bt_type = ETF_ELF, 148a85fe12eSEd Maste .bt_byteorder = ELFDATA2LSB, 149a85fe12eSEd Maste .bt_elfclass = ELFCLASS32, 150a85fe12eSEd Maste .bt_machine = EM_SH, 151a85fe12eSEd Maste }, 152a85fe12eSEd Maste 153a85fe12eSEd Maste { 154a85fe12eSEd Maste .bt_name = "elf32-sh-nbsd", 155a85fe12eSEd Maste .bt_type = ETF_ELF, 156a85fe12eSEd Maste .bt_byteorder = ELFDATA2MSB, 157a85fe12eSEd Maste .bt_elfclass = ELFCLASS32, 158a85fe12eSEd Maste .bt_machine = EM_SH, 159a85fe12eSEd Maste .bt_osabi = ELFOSABI_NETBSD, 160a85fe12eSEd Maste }, 161a85fe12eSEd Maste 162a85fe12eSEd Maste { 163a85fe12eSEd Maste .bt_name = "elf32-shl-nbsd", 164a85fe12eSEd Maste .bt_type = ETF_ELF, 165a85fe12eSEd Maste .bt_byteorder = ELFDATA2LSB, 166a85fe12eSEd Maste .bt_elfclass = ELFCLASS32, 167a85fe12eSEd Maste .bt_machine = EM_SH, 168a85fe12eSEd Maste .bt_osabi = ELFOSABI_NETBSD, 169a85fe12eSEd Maste }, 170a85fe12eSEd Maste 171a85fe12eSEd Maste { 172a85fe12eSEd Maste .bt_name = "elf32-shbig-linux", 173a85fe12eSEd Maste .bt_type = ETF_ELF, 174a85fe12eSEd Maste .bt_byteorder = ELFDATA2MSB, 175a85fe12eSEd Maste .bt_elfclass = ELFCLASS32, 176a85fe12eSEd Maste .bt_machine = EM_SH, 177a85fe12eSEd Maste .bt_osabi = ELFOSABI_LINUX, 178a85fe12eSEd Maste }, 179a85fe12eSEd Maste 180a85fe12eSEd Maste { 181a85fe12eSEd Maste .bt_name = "elf32-sh-linux", 182a85fe12eSEd Maste .bt_type = ETF_ELF, 183a85fe12eSEd Maste .bt_byteorder = ELFDATA2LSB, 184a85fe12eSEd Maste .bt_elfclass = ELFCLASS32, 185a85fe12eSEd Maste .bt_machine = EM_SH, 186a85fe12eSEd Maste .bt_osabi = ELFOSABI_LINUX, 187a85fe12eSEd Maste }, 188a85fe12eSEd Maste 189a85fe12eSEd Maste { 190a85fe12eSEd Maste .bt_name = "elf32-sparc", 191a85fe12eSEd Maste .bt_type = ETF_ELF, 192a85fe12eSEd Maste .bt_byteorder = ELFDATA2MSB, 193a85fe12eSEd Maste .bt_elfclass = ELFCLASS32, 194a85fe12eSEd Maste .bt_machine = EM_SPARC, 195a85fe12eSEd Maste }, 196a85fe12eSEd Maste 197a85fe12eSEd Maste { 198*adb25d1eSEd Maste .bt_name = "elf32-tradbigmips", 199*adb25d1eSEd Maste .bt_type = ETF_ELF, 200*adb25d1eSEd Maste .bt_byteorder = ELFDATA2MSB, 201*adb25d1eSEd Maste .bt_elfclass = ELFCLASS32, 202*adb25d1eSEd Maste .bt_machine = EM_MIPS, 203*adb25d1eSEd Maste }, 204*adb25d1eSEd Maste 205*adb25d1eSEd Maste { 206a85fe12eSEd Maste .bt_name = "elf64-alpha", 207a85fe12eSEd Maste .bt_type = ETF_ELF, 208a85fe12eSEd Maste .bt_byteorder = ELFDATA2LSB, 209a85fe12eSEd Maste .bt_elfclass = ELFCLASS64, 210a85fe12eSEd Maste .bt_machine = EM_ALPHA, 211a85fe12eSEd Maste }, 212a85fe12eSEd Maste 213a85fe12eSEd Maste { 214a85fe12eSEd Maste .bt_name = "elf64-alpha-freebsd", 215a85fe12eSEd Maste .bt_type = ETF_ELF, 216a85fe12eSEd Maste .bt_byteorder = ELFDATA2LSB, 217a85fe12eSEd Maste .bt_elfclass = ELFCLASS64, 218a85fe12eSEd Maste .bt_machine = EM_ALPHA, 219a85fe12eSEd Maste .bt_osabi = ELFOSABI_FREEBSD 220a85fe12eSEd Maste }, 221a85fe12eSEd Maste 222a85fe12eSEd Maste { 223a85fe12eSEd Maste .bt_name = "elf64-big", 224a85fe12eSEd Maste .bt_type = ETF_ELF, 225a85fe12eSEd Maste .bt_byteorder = ELFDATA2MSB, 226a85fe12eSEd Maste .bt_elfclass = ELFCLASS64, 227a85fe12eSEd Maste }, 228a85fe12eSEd Maste 229a85fe12eSEd Maste { 230a85fe12eSEd Maste .bt_name = "elf64-bigmips", 231a85fe12eSEd Maste .bt_type = ETF_ELF, 232a85fe12eSEd Maste .bt_byteorder = ELFDATA2MSB, 233a85fe12eSEd Maste .bt_elfclass = ELFCLASS64, 234a85fe12eSEd Maste .bt_machine = EM_MIPS, 235a85fe12eSEd Maste }, 236a85fe12eSEd Maste 237a85fe12eSEd Maste { 238a85fe12eSEd Maste .bt_name = "elf64-ia64-big", 239a85fe12eSEd Maste .bt_type = ETF_ELF, 240a85fe12eSEd Maste .bt_byteorder = ELFDATA2MSB, 241a85fe12eSEd Maste .bt_elfclass = ELFCLASS64, 242a85fe12eSEd Maste .bt_machine = EM_IA_64, 243a85fe12eSEd Maste }, 244a85fe12eSEd Maste 245a85fe12eSEd Maste { 246a85fe12eSEd Maste .bt_name = "elf64-ia64-little", 247a85fe12eSEd Maste .bt_type = ETF_ELF, 248a85fe12eSEd Maste .bt_byteorder = ELFDATA2LSB, 249a85fe12eSEd Maste .bt_elfclass = ELFCLASS64, 250a85fe12eSEd Maste .bt_machine = EM_IA_64, 251a85fe12eSEd Maste }, 252a85fe12eSEd Maste 253a85fe12eSEd Maste { 254a85fe12eSEd Maste .bt_name = "elf64-little", 255a85fe12eSEd Maste .bt_type = ETF_ELF, 256a85fe12eSEd Maste .bt_byteorder = ELFDATA2LSB, 257a85fe12eSEd Maste .bt_elfclass = ELFCLASS64, 258a85fe12eSEd Maste }, 259a85fe12eSEd Maste 260a85fe12eSEd Maste { 261e85c2b0bSEd Maste .bt_name = "elf64-littleaarch64", 262e85c2b0bSEd Maste .bt_type = ETF_ELF, 263e85c2b0bSEd Maste .bt_byteorder = ELFDATA2LSB, 264e85c2b0bSEd Maste .bt_elfclass = ELFCLASS64, 265e85c2b0bSEd Maste .bt_machine = EM_AARCH64, 266e85c2b0bSEd Maste }, 267e85c2b0bSEd Maste 268e85c2b0bSEd Maste { 269a85fe12eSEd Maste .bt_name = "elf64-littlemips", 270a85fe12eSEd Maste .bt_type = ETF_ELF, 271a85fe12eSEd Maste .bt_byteorder = ELFDATA2LSB, 272a85fe12eSEd Maste .bt_elfclass = ELFCLASS64, 273a85fe12eSEd Maste .bt_machine = EM_MIPS, 274a85fe12eSEd Maste }, 275a85fe12eSEd Maste 276a85fe12eSEd Maste { 277a85fe12eSEd Maste .bt_name = "elf64-powerpc", 278a85fe12eSEd Maste .bt_type = ETF_ELF, 279a85fe12eSEd Maste .bt_byteorder = ELFDATA2MSB, 280a85fe12eSEd Maste .bt_elfclass = ELFCLASS64, 281a85fe12eSEd Maste .bt_machine = EM_PPC64, 282a85fe12eSEd Maste }, 283a85fe12eSEd Maste 284a85fe12eSEd Maste { 285a85fe12eSEd Maste .bt_name = "elf64-powerpcle", 286a85fe12eSEd Maste .bt_type = ETF_ELF, 287a85fe12eSEd Maste .bt_byteorder = ELFDATA2LSB, 288a85fe12eSEd Maste .bt_elfclass = ELFCLASS64, 289a85fe12eSEd Maste .bt_machine = EM_PPC64, 290a85fe12eSEd Maste }, 291a85fe12eSEd Maste 292a85fe12eSEd Maste { 293a85fe12eSEd Maste .bt_name = "elf64-sh64", 294a85fe12eSEd Maste .bt_type = ETF_ELF, 295a85fe12eSEd Maste .bt_byteorder = ELFDATA2MSB, 296a85fe12eSEd Maste .bt_elfclass = ELFCLASS64, 297a85fe12eSEd Maste .bt_machine = EM_SH, 298a85fe12eSEd Maste }, 299a85fe12eSEd Maste 300a85fe12eSEd Maste { 301a85fe12eSEd Maste .bt_name = "elf64-sh64l", 302a85fe12eSEd Maste .bt_type = ETF_ELF, 303a85fe12eSEd Maste .bt_byteorder = ELFDATA2LSB, 304a85fe12eSEd Maste .bt_elfclass = ELFCLASS64, 305a85fe12eSEd Maste .bt_machine = EM_SH, 306a85fe12eSEd Maste }, 307a85fe12eSEd Maste 308a85fe12eSEd Maste { 309a85fe12eSEd Maste .bt_name = "elf64-sh64-nbsd", 310a85fe12eSEd Maste .bt_type = ETF_ELF, 311a85fe12eSEd Maste .bt_byteorder = ELFDATA2MSB, 312a85fe12eSEd Maste .bt_elfclass = ELFCLASS64, 313a85fe12eSEd Maste .bt_machine = EM_SH, 314a85fe12eSEd Maste .bt_osabi = ELFOSABI_NETBSD, 315a85fe12eSEd Maste }, 316a85fe12eSEd Maste 317a85fe12eSEd Maste { 318a85fe12eSEd Maste .bt_name = "elf64-sh64l-nbsd", 319a85fe12eSEd Maste .bt_type = ETF_ELF, 320a85fe12eSEd Maste .bt_byteorder = ELFDATA2LSB, 321a85fe12eSEd Maste .bt_elfclass = ELFCLASS64, 322a85fe12eSEd Maste .bt_machine = EM_SH, 323a85fe12eSEd Maste .bt_osabi = ELFOSABI_NETBSD, 324a85fe12eSEd Maste }, 325a85fe12eSEd Maste 326a85fe12eSEd Maste { 327a85fe12eSEd Maste .bt_name = "elf64-sh64big-linux", 328a85fe12eSEd Maste .bt_type = ETF_ELF, 329a85fe12eSEd Maste .bt_byteorder = ELFDATA2MSB, 330a85fe12eSEd Maste .bt_elfclass = ELFCLASS64, 331a85fe12eSEd Maste .bt_machine = EM_SH, 332a85fe12eSEd Maste .bt_osabi = ELFOSABI_LINUX, 333a85fe12eSEd Maste }, 334a85fe12eSEd Maste 335a85fe12eSEd Maste { 336a85fe12eSEd Maste .bt_name = "elf64-sh64-linux", 337a85fe12eSEd Maste .bt_type = ETF_ELF, 338a85fe12eSEd Maste .bt_byteorder = ELFDATA2LSB, 339a85fe12eSEd Maste .bt_elfclass = ELFCLASS64, 340a85fe12eSEd Maste .bt_machine = EM_SH, 341a85fe12eSEd Maste .bt_osabi = ELFOSABI_LINUX, 342a85fe12eSEd Maste }, 343a85fe12eSEd Maste 344a85fe12eSEd Maste { 345a85fe12eSEd Maste .bt_name = "elf64-sparc", 346a85fe12eSEd Maste .bt_type = ETF_ELF, 347a85fe12eSEd Maste .bt_byteorder = ELFDATA2MSB, 348a85fe12eSEd Maste .bt_elfclass = ELFCLASS64, 349a85fe12eSEd Maste .bt_machine = EM_SPARCV9, 350a85fe12eSEd Maste }, 351a85fe12eSEd Maste 352a85fe12eSEd Maste { 353a85fe12eSEd Maste .bt_name = "elf64-sparc-freebsd", 354a85fe12eSEd Maste .bt_type = ETF_ELF, 355a85fe12eSEd Maste .bt_byteorder = ELFDATA2MSB, 356a85fe12eSEd Maste .bt_elfclass = ELFCLASS64, 357a85fe12eSEd Maste .bt_machine = EM_SPARCV9, 358a85fe12eSEd Maste .bt_osabi = ELFOSABI_FREEBSD 359a85fe12eSEd Maste }, 360a85fe12eSEd Maste 361a85fe12eSEd Maste { 362*adb25d1eSEd Maste .bt_name = "elf64-tradbigmips", 363*adb25d1eSEd Maste .bt_type = ETF_ELF, 364*adb25d1eSEd Maste .bt_byteorder = ELFDATA2MSB, 365*adb25d1eSEd Maste .bt_elfclass = ELFCLASS64, 366*adb25d1eSEd Maste .bt_machine = EM_MIPS, 367*adb25d1eSEd Maste }, 368*adb25d1eSEd Maste 369*adb25d1eSEd Maste { 370a85fe12eSEd Maste .bt_name = "elf64-x86-64", 371a85fe12eSEd Maste .bt_type = ETF_ELF, 372a85fe12eSEd Maste .bt_byteorder = ELFDATA2LSB, 373a85fe12eSEd Maste .bt_elfclass = ELFCLASS64, 374a85fe12eSEd Maste .bt_machine = EM_X86_64, 375a85fe12eSEd Maste }, 376a85fe12eSEd Maste 377a85fe12eSEd Maste { 378a85fe12eSEd Maste .bt_name = "elf64-x86-64-freebsd", 379a85fe12eSEd Maste .bt_type = ETF_ELF, 380a85fe12eSEd Maste .bt_byteorder = ELFDATA2LSB, 381a85fe12eSEd Maste .bt_elfclass = ELFCLASS64, 382a85fe12eSEd Maste .bt_machine = EM_X86_64, 383a85fe12eSEd Maste .bt_osabi = ELFOSABI_FREEBSD 384a85fe12eSEd Maste }, 385a85fe12eSEd Maste 386a85fe12eSEd Maste { 387a85fe12eSEd Maste .bt_name = "ihex", 388a85fe12eSEd Maste .bt_type = ETF_IHEX, 389a85fe12eSEd Maste }, 390a85fe12eSEd Maste 391a85fe12eSEd Maste { 392a85fe12eSEd Maste .bt_name = "srec", 393a85fe12eSEd Maste .bt_type = ETF_SREC, 394a85fe12eSEd Maste }, 395a85fe12eSEd Maste 396a85fe12eSEd Maste { 397a85fe12eSEd Maste .bt_name = "symbolsrec", 398a85fe12eSEd Maste .bt_type = ETF_SREC, 399a85fe12eSEd Maste }, 400a85fe12eSEd Maste 401a85fe12eSEd Maste { 402839529caSEd Maste .bt_name = "efi-app-ia32", 403839529caSEd Maste .bt_type = ETF_EFI, 404839529caSEd Maste .bt_machine = EM_386, 405839529caSEd Maste }, 406839529caSEd Maste 407839529caSEd Maste { 408839529caSEd Maste .bt_name = "efi-app-x86_64", 409839529caSEd Maste .bt_type = ETF_EFI, 410839529caSEd Maste .bt_machine = EM_X86_64, 411839529caSEd Maste }, 412839529caSEd Maste 413839529caSEd Maste { 414839529caSEd Maste .bt_name = "pei-i386", 415839529caSEd Maste .bt_type = ETF_PE, 416839529caSEd Maste .bt_machine = EM_386, 417839529caSEd Maste }, 418839529caSEd Maste 419839529caSEd Maste { 420839529caSEd Maste .bt_name = "pei-x86-64", 421839529caSEd Maste .bt_type = ETF_PE, 422839529caSEd Maste .bt_machine = EM_X86_64, 423839529caSEd Maste }, 424839529caSEd Maste 425839529caSEd Maste { 426a85fe12eSEd Maste .bt_name = NULL, 427a85fe12eSEd Maste .bt_type = ETF_NONE, 428a85fe12eSEd Maste }, 429a85fe12eSEd Maste }; 430