Prevent overflowing the selected_cpu_name buffer in the ARM assembler.
[deliverable/binutils-gdb.git] / bfd / targets.c
index dc1e3ca7035bcec602cb5fc4a1ae2bc1a7da239d..19469bc448cbc2b6581c79c9bd3dcf8f8b377719 100644 (file)
@@ -144,6 +144,7 @@ DESCRIPTION
 
 .enum bfd_flavour
 .{
+.  {* N.B. Update bfd_flavour_name if you change this.  *}
 .  bfd_target_unknown_flavour,
 .  bfd_target_aout_flavour,
 .  bfd_target_coff_flavour,
@@ -631,6 +632,7 @@ extern const bfd_target frv_elf32_vec;
 extern const bfd_target frv_elf32_fdpic_vec;
 extern const bfd_target h8300_coff_vec;
 extern const bfd_target h8300_elf32_vec;
+extern const bfd_target h8300_elf32_linux_vec;
 extern const bfd_target h8500_coff_vec;
 extern const bfd_target hppa_elf32_vec;
 extern const bfd_target hppa_elf32_linux_vec;
@@ -662,6 +664,7 @@ extern const bfd_target i386_msdos_vec;
 extern const bfd_target i386_nlm32_vec;
 extern const bfd_target i386_pe_vec;
 extern const bfd_target i386_pei_vec;
+extern const bfd_target iamcu_elf32_vec;
 extern const bfd_target i860_coff_vec;
 extern const bfd_target i860_elf32_vec;
 extern const bfd_target i860_elf32_le_vec;
@@ -872,6 +875,7 @@ extern const bfd_target tilegx_elf64_le_vec;
 extern const bfd_target tilepro_elf32_vec;
 extern const bfd_target v800_elf32_vec;
 extern const bfd_target v850_elf32_vec;
+extern const bfd_target ft32_elf32_vec;
 extern const bfd_target vax_aout_1knbsd_vec;
 extern const bfd_target vax_aout_bsd_vec;
 extern const bfd_target vax_aout_nbsd_vec;
@@ -883,6 +887,7 @@ extern const bfd_target x86_64_coff_vec;
 extern const bfd_target x86_64_elf32_vec;
 extern const bfd_target x86_64_elf32_nacl_vec;
 extern const bfd_target x86_64_elf64_vec;
+extern const bfd_target x86_64_elf64_cloudabi_vec;
 extern const bfd_target x86_64_elf64_fbsd_vec;
 extern const bfd_target x86_64_elf64_nacl_vec;
 extern const bfd_target x86_64_elf64_sol2_vec;
@@ -1044,6 +1049,7 @@ static const bfd_target * const _bfd_target_vector[] =
 
        &h8300_coff_vec,
        &h8300_elf32_vec,
+       &h8300_elf32_linux_vec,
        &h8500_coff_vec,
 
        &hppa_elf32_vec,
@@ -1090,6 +1096,8 @@ static const bfd_target * const _bfd_target_vector[] =
        &i386_pe_vec,
        &i386_pei_vec,
 
+       &iamcu_elf32_vec,
+
        &i860_coff_vec,
        &i860_elf32_vec,
        &i860_elf32_le_vec,
@@ -1378,6 +1386,8 @@ static const bfd_target * const _bfd_target_vector[] =
 #endif
        &tilepro_elf32_vec,
 
+       &ft32_elf32_vec,
+
        &v800_elf32_vec,
        &v850_elf32_vec,
 
@@ -1397,6 +1407,7 @@ static const bfd_target * const _bfd_target_vector[] =
        &x86_64_elf32_vec,
        &x86_64_elf32_nacl_vec,
        &x86_64_elf64_vec,
+       &x86_64_elf64_cloudabi_vec,
        &x86_64_elf64_fbsd_vec,
        &x86_64_elf64_nacl_vec,
        &x86_64_elf64_sol2_vec,
@@ -1819,3 +1830,50 @@ bfd_search_for_target (int (*search_func) (const bfd_target *, void *),
 
   return NULL;
 }
+
+/*
+FUNCTION
+       bfd_flavour_name
+
+SYNOPSIS
+       const char *bfd_flavour_name (enum bfd_flavour flavour);
+
+DESCRIPTION
+       Return the string form of @var{flavour}.
+*/
+
+const char *
+bfd_flavour_name (enum bfd_flavour flavour)
+{
+  switch (flavour)
+    {
+    case bfd_target_unknown_flavour: return "unknown file format";
+    case bfd_target_aout_flavour: return "a.out";
+    case bfd_target_coff_flavour: return "COFF";
+    case bfd_target_ecoff_flavour: return "ECOFF";
+    case bfd_target_xcoff_flavour: return "XCOFF";
+    case bfd_target_elf_flavour: return "ELF";
+    case bfd_target_ieee_flavour: return "IEEE";
+    case bfd_target_nlm_flavour: return "NLM";
+    case bfd_target_oasys_flavour: return "Oasys";
+    case bfd_target_tekhex_flavour: return "Tekhex";
+    case bfd_target_srec_flavour: return "Srec";
+    case bfd_target_verilog_flavour: return "Verilog";
+    case bfd_target_ihex_flavour: return "Ihex";
+    case bfd_target_som_flavour: return "SOM";
+    case bfd_target_os9k_flavour: return "OS9K";
+    case bfd_target_versados_flavour: return "Versados";
+    case bfd_target_msdos_flavour: return "MSDOS";
+    case bfd_target_ovax_flavour: return "Ovax";
+    case bfd_target_evax_flavour: return "Evax";
+    case bfd_target_mmo_flavour: return "mmo";
+    case bfd_target_mach_o_flavour: return "MACH_O";
+    case bfd_target_pef_flavour: return "PEF";
+    case bfd_target_pef_xlib_flavour: return "PEF_XLIB";
+    case bfd_target_sym_flavour: return "SYM";
+    /* There is no "default" case here so that -Wswitch (part of -Wall)
+       catches missing entries.  */
+    }
+
+  abort ();
+}
This page took 0.04341 seconds and 4 git commands to generate.