This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[ping] [PATCH V2 0/2] Split tdesc_(amd64|i386)_mpx into tdesc(amd64|i386)_mpx_* and tdesc(amd64|i386)_avx_mpx_*
- From: "Tedeschi, Walfred" <walfred dot tedeschi at intel dot com>
- To: "palves at redhat dot com" <palves at redhat dot com>, "brobecker at adacore dot com" <brobecker at adacore dot com>
- Cc: "gdb-patches at sourceware dot org" <gdb-patches at sourceware dot org>
- Date: Wed, 9 Mar 2016 17:04:33 +0000
- Subject: [ping] [PATCH V2 0/2] Split tdesc_(amd64|i386)_mpx into tdesc(amd64|i386)_mpx_* and tdesc(amd64|i386)_avx_mpx_*
- Authentication-results: sourceware.org; auth=none
Ping for the series:
https://sourceware.org/ml/gdb-patches/2016-03/msg00050.html
https://sourceware.org/ml/gdb-patches/2016-03/msg00049.html
Thanks and regards,
-Fred
-----Original Message-----
From: Tedeschi, Walfred
Sent: Thursday, March 03, 2016 6:26 PM
To: palves@redhat.com; brobecker@adacore.com
Cc: gdb-patches@sourceware.org; Tedeschi, Walfred
Subject: [PATCH V2 0/2] Split tdesc_(amd64|i386)_mpx into tdesc(amd64|i386)_mpx_* and tdesc(amd64|i386)_avx_mpx_*
CPU features can occur in any combination. The current assumption that feature "A" implies in feature "B" does not necessarily hold.
This patch series construct an additional combination of the Intel(R) Memory Protection Extensions (MPX) with Intel(R) Advanced Vector Extensions (AVX).
Starting from the current implementation that has MPX combined with AVX.
A new target description having only MPX will be created using a two step approach as described below:
First step:
Mirror (i386|amd64)mpx target descriptors onto (i386|amd64)-avx-mpx ones.
Add a redundant target description for the MPX and AVX case using a combined feature name to reflect that, i.e. avx-mpx. A new flag 2is also added to address MPX case without AVX.
Second step:
Refactor (i386|amd64)-mpx target descriptors.
AVX feature is removed from the set of files that described MPX alone
feature. Present on GDB code previous to this patch.
Tests were done with hardware having MPX and AVX as is.
For MPX standing alone tests were done forcing the XCR0 bits.
Difference since V1:
* Added -api support missing as reported by Marcin.
Thanks and regards,
-Fred
Walfred Tedeschi (2):
Add redundant target descriptor for tdesc(amd64|i386)_avx_mpx_*
Re-factor (i386|amd64)mpx target descriptors.
gdb/amd64-linux-tdep.c | 7 +
gdb/amd64-linux-tdep.h | 1 +
gdb/amd64-tdep.c | 4 +
gdb/common/x86-xstate.h | 5 +-
gdb/features/Makefile | 18 +++
gdb/features/i386/amd64-avx-mpx-linux.c | 211 ++++++++++++++++++++++++++++
gdb/features/i386/amd64-avx-mpx-linux.xml | 19 +++
gdb/features/i386/amd64-avx-mpx.c | 206 +++++++++++++++++++++++++++
gdb/features/i386/amd64-avx-mpx.xml | 17 +++
gdb/features/i386/amd64-mpx-linux.c | 30 +---
gdb/features/i386/amd64-mpx-linux.xml | 1 -
gdb/features/i386/amd64-mpx.c | 30 +---
gdb/features/i386/amd64-mpx.xml | 1 -
gdb/features/i386/i386-avx-mpx-linux.c | 187 ++++++++++++++++++++++++
gdb/features/i386/i386-avx-mpx-linux.xml | 19 +++
gdb/features/i386/i386-avx-mpx.c | 182 ++++++++++++++++++++++++
gdb/features/i386/i386-avx-mpx.xml | 17 +++
gdb/features/i386/i386-mpx-linux.c | 22 +--
gdb/features/i386/i386-mpx-linux.xml | 1 -
gdb/features/i386/i386-mpx.c | 22 +--
gdb/features/i386/i386-mpx.xml | 1 -
gdb/gdbserver/Makefile.in | 16 +++
gdb/gdbserver/configure.srv | 20 +--
gdb/gdbserver/linux-amd64-ipa.c | 3 +
gdb/gdbserver/linux-i386-ipa.c | 2 +
gdb/gdbserver/linux-x86-low.c | 12 ++
gdb/gdbserver/linux-x86-tdesc.h | 11 +-
gdb/i386-linux-tdep.c | 4 +
gdb/i386-linux-tdep.h | 1 +
gdb/i386-tdep.c | 4 +
gdb/regformats/i386/amd64-avx-mpx-linux.dat | 85 +++++++++++
gdb/regformats/i386/amd64-avx-mpx.dat | 84 +++++++++++
gdb/regformats/i386/amd64-mpx-linux.dat | 16 ---
gdb/regformats/i386/amd64-mpx.dat | 16 ---
gdb/regformats/i386/i386-avx-mpx-linux.dat | 61 ++++++++
gdb/regformats/i386/i386-avx-mpx.dat | 60 ++++++++
gdb/regformats/i386/i386-mpx-linux.dat | 8 --
gdb/regformats/i386/i386-mpx.dat | 8 --
gdb/x86-linux-nat.c | 7 +
39 files changed, 1274 insertions(+), 145 deletions(-)
create mode 100644 gdb/features/i386/amd64-avx-mpx-linux.c
create mode 100644 gdb/features/i386/amd64-avx-mpx-linux.xml
create mode 100644 gdb/features/i386/amd64-avx-mpx.c
create mode 100644 gdb/features/i386/amd64-avx-mpx.xml
create mode 100644 gdb/features/i386/i386-avx-mpx-linux.c
create mode 100644 gdb/features/i386/i386-avx-mpx-linux.xml
create mode 100644 gdb/features/i386/i386-avx-mpx.c
create mode 100644 gdb/features/i386/i386-avx-mpx.xml
create mode 100644 gdb/regformats/i386/amd64-avx-mpx-linux.dat
create mode 100644 gdb/regformats/i386/amd64-avx-mpx.dat
create mode 100644 gdb/regformats/i386/i386-avx-mpx-linux.dat
create mode 100644 gdb/regformats/i386/i386-avx-mpx.dat
--
2.1.4
Intel Deutschland GmbH
Registered Address: Am Campeon 10-12, 85579 Neubiberg, Germany
Tel: +49 89 99 8853-0, www.intel.de
Managing Directors: Christin Eisenschmid, Christian Lamprechter
Chairperson of the Supervisory Board: Nicole Lau
Registered Office: Munich
Commercial Register: Amtsgericht Muenchen HRB 186928