Re: [PATCH v6 12/15] gdbserver: Refactor the legacy region within the xsave struct

John Baldwin
2023-08-28T17:32:35Z

On 8/28/23 9:50 AM, Simon Marchi wrote:
> On 7/14/23 11:51, John Baldwin wrote:
>> From: Aleksandar Paunovic <aleksandar.paunovic@intel.com>
>>
>> Legacy fields of the XSAVE area are already defined within fx_save
>> struct. Use class inheritance to remove code duplication.
>>
>> The two changed functions are called within all tests which run
>> gdbserver.
>>
>> Signed-off-by: Aleksandar Paunovic <aleksandar.paunovic@intel.com>
>> Co-authored-by: John Baldwin <jhb@FreeBSD.org>
>> ---
>> gdbserver/i387-fp.cc | 27 ++-------------------------
>> 1 file changed, 2 insertions(+), 25 deletions(-)
>>
>> diff --git a/gdbserver/i387-fp.cc b/gdbserver/i387-fp.cc
>> index b8d7a912f26..a122e2d860b 100644
>> --- a/gdbserver/i387-fp.cc
>> +++ b/gdbserver/i387-fp.cc
>> @@ -81,29 +81,7 @@ struct i387_fxsave {
>> unsigned char xmm_space[256];
>> };
>>
>> -struct i387_xsave {
>> - /* All these are only sixteen bits, plus padding, except for fop (which
>> - is only eleven bits), and fooff / fioff (which are 32 bits each). */
>> - unsigned short fctrl;
>> - unsigned short fstat;
>> - unsigned short ftag;
>> - unsigned short fop;
>> - unsigned int fioff;
>> - unsigned short fiseg;
>> - unsigned short pad1;
>> - unsigned int fooff;
>> - unsigned short foseg;
>> - unsigned short pad12;
>> -
>> - unsigned int mxcsr;
>> - unsigned int mxcsr_mask;
>> -
>> - /* Space for eight 80-bit FP values in 128-bit spaces. */
>> - unsigned char st_space[128];
>> -
>> - /* Space for eight 128-bit XMM values, or 16 on x86-64. */
>> - unsigned char xmm_space[256];
>> -
>> +struct i387_xsave : public i387_fxsave {
>
>
> The { should go on the next line... can you fix all the structs in this
> file with an obvious patch on top of the series?

Will do, thanks!

--
John Baldwin