| Index: gdb/features/i386/amd64-mpx.c
|
| diff --git a/gdb/features/i386/amd64-avx.c b/gdb/features/i386/amd64-mpx.c
|
| similarity index 81%
|
| copy from gdb/features/i386/amd64-avx.c
|
| copy to gdb/features/i386/amd64-mpx.c
|
| index 05c60ff0fe98261105fb8f7656ffa8ce73a9792d..15ae5f7e2cebbf1d8e64357d8ecfe32556c0dee0 100644
|
| --- a/gdb/features/i386/amd64-avx.c
|
| +++ b/gdb/features/i386/amd64-mpx.c
|
| @@ -1,16 +1,18 @@
|
| -/* THIS FILE IS GENERATED. Original: amd64-avx.xml */
|
| +/* THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi:set ro:
|
| + Original: amd64-mpx.xml */
|
|
|
| #include "defs.h"
|
| #include "osabi.h"
|
| #include "target-descriptions.h"
|
|
|
| -struct target_desc *tdesc_amd64_avx;
|
| +struct target_desc *tdesc_amd64_mpx;
|
| static void
|
| -initialize_tdesc_amd64_avx (void)
|
| +initialize_tdesc_amd64_mpx (void)
|
| {
|
| struct target_desc *result = allocate_target_description ();
|
| struct tdesc_feature *feature;
|
| - struct tdesc_type *field_type, *type;
|
| + struct tdesc_type *field_type;
|
| + struct tdesc_type *type;
|
|
|
| set_tdesc_architecture (result, bfd_scan_arch ("i386:x86-64"));
|
|
|
| @@ -162,5 +164,43 @@ initialize_tdesc_amd64_avx (void)
|
| tdesc_create_reg (feature, "ymm14h", 71, 1, NULL, 128, "uint128");
|
| tdesc_create_reg (feature, "ymm15h", 72, 1, NULL, 128, "uint128");
|
|
|
| - tdesc_amd64_avx = result;
|
| + feature = tdesc_create_feature (result, "org.gnu.gdb.i386.mpx");
|
| + type = tdesc_create_struct (feature, "br128");
|
| + field_type = tdesc_named_type (feature, "uint64");
|
| + tdesc_add_field (type, "lbound", field_type);
|
| + field_type = tdesc_named_type (feature, "uint64");
|
| + tdesc_add_field (type, "ubound_raw", field_type);
|
| +
|
| + type = tdesc_create_struct (feature, "_bndstatus");
|
| + tdesc_set_struct_size (type, 8);
|
| + tdesc_add_bitfield (type, "bde", 2, 63);
|
| + tdesc_add_bitfield (type, "error", 0, 1);
|
| +
|
| + type = tdesc_create_union (feature, "status");
|
| + field_type = tdesc_named_type (feature, "data_ptr");
|
| + tdesc_add_field (type, "raw", field_type);
|
| + field_type = tdesc_named_type (feature, "_bndstatus");
|
| + tdesc_add_field (type, "status", field_type);
|
| +
|
| + type = tdesc_create_struct (feature, "_bndcfgu");
|
| + tdesc_set_struct_size (type, 8);
|
| + tdesc_add_bitfield (type, "base", 12, 63);
|
| + tdesc_add_bitfield (type, "reserved", 2, 11);
|
| + tdesc_add_bitfield (type, "preserved", 1, 1);
|
| + tdesc_add_bitfield (type, "enabled", 0, 0);
|
| +
|
| + type = tdesc_create_union (feature, "cfgu");
|
| + field_type = tdesc_named_type (feature, "data_ptr");
|
| + tdesc_add_field (type, "raw", field_type);
|
| + field_type = tdesc_named_type (feature, "_bndcfgu");
|
| + tdesc_add_field (type, "config", field_type);
|
| +
|
| + tdesc_create_reg (feature, "bnd0raw", 73, 1, NULL, 128, "br128");
|
| + tdesc_create_reg (feature, "bnd1raw", 74, 1, NULL, 128, "br128");
|
| + tdesc_create_reg (feature, "bnd2raw", 75, 1, NULL, 128, "br128");
|
| + tdesc_create_reg (feature, "bnd3raw", 76, 1, NULL, 128, "br128");
|
| + tdesc_create_reg (feature, "bndcfgu", 77, 1, NULL, 64, "cfgu");
|
| + tdesc_create_reg (feature, "bndstatus", 78, 1, NULL, 64, "status");
|
| +
|
| + tdesc_amd64_mpx = result;
|
| }
|
|
|