Add FreeBSD/aarch64 architecture.
[deliverable/binutils-gdb.git] / gdb / i386-linux-tdep.c
index dd21b7057f12238c7d0e81f178e1ff07ea7a2cfa..3e2bee916a1c11cb752f4e011e91f9fde00f904b 100644 (file)
 #include "record-full.h"
 #include "linux-record.h"
 
-#include "features/i386/32bit-core.c"
-#include "features/i386/32bit-sse.c"
-#include "features/i386/32bit-linux.c"
-#include "features/i386/32bit-avx.c"
-#include "features/i386/32bit-mpx.c"
-#include "features/i386/32bit-avx512.c"
-#include "features/i386/32bit-pkeys.c"
+#include "arch/i386.h"
+#include "target-descriptions.h"
 
 /* Return non-zero, when the register is in the corresponding register
    group.  Put the LINUX_ORIG_EAX register in the system group.  */
@@ -699,33 +694,7 @@ i386_linux_read_description (uint64_t xcr0)
     [(xcr0 & X86_XSTATE_PKRU) ? 1 : 0];
 
   if (*tdesc == NULL)
-    {
-      *tdesc = allocate_target_description ();
-      set_tdesc_architecture (*tdesc, bfd_scan_arch ("i386"));
-      set_tdesc_osabi (*tdesc, osabi_from_tdesc_string ("GNU/Linux"));
-
-      long regnum = 0;
-
-      if (xcr0 & X86_XSTATE_X87)
-       regnum = create_feature_i386_32bit_core (*tdesc, regnum);
-
-      if (xcr0 & X86_XSTATE_SSE)
-       regnum = create_feature_i386_32bit_sse (*tdesc, regnum);
-
-      regnum = create_feature_i386_32bit_linux (*tdesc, regnum);
-
-      if (xcr0 & X86_XSTATE_AVX)
-       regnum = create_feature_i386_32bit_avx (*tdesc, regnum);
-
-      if (xcr0 & X86_XSTATE_MPX)
-       regnum = create_feature_i386_32bit_mpx (*tdesc, regnum);
-
-      if (xcr0 & X86_XSTATE_AVX512)
-       regnum = create_feature_i386_32bit_avx512 (*tdesc, regnum);
-
-      if (xcr0 & X86_XSTATE_PKRU)
-       regnum = create_feature_i386_32bit_pkeys (*tdesc, regnum);
-    }
+    *tdesc = i386_create_target_description (xcr0, true);
 
   return *tdesc;
 }
This page took 0.023621 seconds and 4 git commands to generate.