Add bfloat16 support for AVX512 register view.
[deliverable/binutils-gdb.git] / gdb / i386-tdep.c
index 322d2a4b69c0f53c885abddcda09c3a1175b4f78..1b7971c4528bb16bd5c25f3a1bd125c674529ed4 100644 (file)
@@ -3112,6 +3112,7 @@ i386_zmm_type (struct gdbarch *gdbarch)
        int8_t v64_int8[64];
        double v8_double[8];
        float v16_float[16];
+       bfloat16_t v32_bfloat16[32];
       };
 #endif
 
@@ -3119,6 +3120,8 @@ i386_zmm_type (struct gdbarch *gdbarch)
 
       t = arch_composite_type (gdbarch,
                               "__gdb_builtin_type_vec512i", TYPE_CODE_UNION);
+      append_composite_type_field (t, "v32_bfloat16",
+                                  init_vector_type (bt->builtin_bfloat16, 32));
       append_composite_type_field (t, "v16_float",
                                   init_vector_type (bt->builtin_float, 16));
       append_composite_type_field (t, "v8_double",
@@ -3165,6 +3168,7 @@ i386_ymm_type (struct gdbarch *gdbarch)
         int8_t v32_int8[32];
         double v4_double[4];
         float v8_float[8];
+        bfloat16_t v16_bfloat16[16];
       };
 #endif
 
@@ -3172,6 +3176,8 @@ i386_ymm_type (struct gdbarch *gdbarch)
 
       t = arch_composite_type (gdbarch,
                               "__gdb_builtin_type_vec256i", TYPE_CODE_UNION);
+      append_composite_type_field (t, "v16_bfloat16",
+                                  init_vector_type (bt->builtin_bfloat16, 16));
       append_composite_type_field (t, "v8_float",
                                   init_vector_type (bt->builtin_float, 8));
       append_composite_type_field (t, "v4_double",
@@ -8487,6 +8493,9 @@ i386_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
      alignment.  */
   set_gdbarch_long_double_bit (gdbarch, 96);
 
+  /* Support of bfloat16 format.  */
+  set_gdbarch_bfloat16_format (gdbarch, floatformats_bfloat16);
+
   /* Support for floating-point data type variants.  */
   set_gdbarch_floatformat_for_type (gdbarch, i386_floatformat_for_type);
 
This page took 0.024636 seconds and 4 git commands to generate.