Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: "Pierre Muller" <pierre.muller@ics-cnrs.unistra.fr>
To: "'Mark Kettenis'" <mark.kettenis@xs4all.nl>, <hjl.tools@gmail.com>
Cc: <gdb-patches@sourceware.org>
Subject: RE: PATCH: Support i386 without SSE
Date: Thu, 08 Apr 2010 20:33:00 -0000	[thread overview]
Message-ID: <000c01cad75a$b751a490$25f4edb0$@muller@ics-cnrs.unistra.fr> (raw)
In-Reply-To: <201004081908.o38J8D9H025274@glazunov.sibelius.xs4all.nl>



> -----Message d'origine-----
> De : gdb-patches-owner@sourceware.org [mailto:gdb-patches-
> owner@sourceware.org] De la part de Mark Kettenis
> Envoyé : Thursday, April 08, 2010 9:08 PM
> À : hjl.tools@gmail.com
> Cc : gdb-patches@sourceware.org
> Objet : Re: PATCH: Support i386 without SSE
> 
> > Date: Wed, 7 Apr 2010 13:05:47 -0700
> > From: "H.J. Lu" <hongjiu.lu@intel.com>
> >
> > Hi,
> >
> > This patch supports i386 without SSE.  Any comments/suggestions?
> 
> Eli, Pierre, can you test wether this fixes the issues on Go32?

 I tested the patch and it does
indeed fix the two problems that I 
reported.
  Nevertheless, there are still strange things:
  if you use 'maint print register-groups'
you will find out that
the SSE xmmX registers are still present as registers 32 to 40
and the ymmX as 41 to 48, but with empty names and a strange int0_t type.
(see below).
 
  As this is not user visible, 
I think that the patch is OK for me...

Pierre

(top-gdb) maint print register-groups
 Name         Nr  Rel Offset    Size  Type            Groups
 eax           0    0      0       4 int32_t
general,all,save,restore
 ecx           1    1      4       4 int32_t
general,all,save,restore
 edx           2    2      8       4 int32_t
general,all,save,restore
 ebx           3    3     12       4 int32_t
general,all,save,restore
 esp           4    4     16       4 *1
general,all,save,restore
 ebp           5    5     20       4 *1
general,all,save,restore
 esi           6    6     24       4 int32_t
general,all,save,restore
 edi           7    7     28       4 int32_t
general,all,save,restore
 eip           8    8     32       4 *1
general,all,save,restore
 eflags        9    9     36       4 i386_eflags
general,all,save,restore
 cs           10   10     40       4 int32_t
general,all,save,restore
 ss           11   11     44       4 int32_t
general,all,save,restore
 ds           12   12     48       4 int32_t
general,all,save,restore
 es           13   13     52       4 int32_t
general,all,save,restore
 fs           14   14     56       4 int32_t
general,all,save,restore
 gs           15   15     60       4 int32_t
general,all,save,restore
 st0          16   16     64      10 _i387_ext       float,all,save,restore
 st1          17   17     74      10 _i387_ext       float,all,save,restore
 st2          18   18     84      10 _i387_ext       float,all,save,restore
 st3          19   19     94      10 _i387_ext       float,all,save,restore
 st4          20   20    104      10 _i387_ext       float,all,save,restore
 st5          21   21    114      10 _i387_ext       float,all,save,restore
 st6          22   22    124      10 _i387_ext       float,all,save,restore
 st7          23   23    134      10 _i387_ext       float,all,save,restore
 fctrl        24   24    144       4 long            float,all,save,restore
 fstat        25   25    148       4 long            float,all,save,restore
 ftag         26   26    152       4 long            float,all,save,restore
 fiseg        27   27    156       4 long            float,all,save,restore
 fioff        28   28    160       4 long            float,all,save,restore
 foseg        29   29    164       4 long            float,all,save,restore
 fooff        30   30    168       4 long            float,all,save,restore
 fop          31   31    172       4 long            float,all,save,restore
 ''           32   32    176       0 int0_t          general
 ''           33   33    176       0 int0_t          general
 ''           34   34    176       0 int0_t          general
 ''           35   35    176       0 int0_t          general
 ''           36   36    176       0 int0_t          general
 ''           37   37    176       0 int0_t          general
 ''           38   38    176       0 int0_t          general
 ''           39   39    176       0 int0_t          general
 ''           40   40    176       0 int0_t          general
 ''           41   41    176       0 int0_t          general
 ''           42   42    176       0 int0_t          general
 ''           43   43    176       0 int0_t          general
 ''           44   44    176       0 int0_t          general
 ''           45   45    176       0 int0_t          general
 ''           46   46    176       0 int0_t          general
 ''           47   47    176       0 int0_t          general
 ''           48   48    176       0 int0_t          general
 al           49    0    176       1 int8_t
 cl           50    1    177       1 int8_t
 dl           51    2    178       1 int8_t
 bl           52    3    179       1 int8_t
 ah           53    4    180       1 int8_t
 ch           54    5    181       1 int8_t
 dh           55    6    182       1 int8_t
 bh           56    7    183       1 int8_t
 ax           57    8    184       2 int16_t
 cx           58    9    186       2 int16_t
 dx           59   10    188       2 int16_t
 bx           60   11    190       2 int16_t
 ''           61   12    192       2 int16_t
 bp           62   13    194       2 int16_t
 si           63   14    196       2 int16_t
 di           64   15    198       2 int16_t
 mm0          65   16    200       8 _vec64i         mmx,all,vector
 mm1          66   17    208       8 _vec64i         mmx,all,vector
 mm2          67   18    216       8 _vec64i         mmx,all,vector
 mm3          68   19    224       8 _vec64i         mmx,all,vector
 mm4          69   20    232       8 _vec64i         mmx,all,vector
 mm5          70   21    240       8 _vec64i         mmx,all,vector
 mm6          71   22    248       8 _vec64i         mmx,all,vector
 mm7          72   23    256       8 _vec64i         mmx,all,vector
*1: Register type's name NULL.

There are two oddities here:
the void * type are not nicely reported,
and the missing registers are in the general group.



  reply	other threads:[~2010-04-08 20:33 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-04-07 20:05 H.J. Lu
2010-04-07 20:12 ` H.J. Lu
2010-04-07 20:31   ` Eli Zaretskii
2010-04-08 19:08 ` Mark Kettenis
2010-04-08 20:33   ` Pierre Muller [this message]
     [not found]   ` <000c01cad75a$b751a490$25f4edb0$%muller@ics-cnrs.unistra.fr>
2010-04-08 21:37     ` Eli Zaretskii
2010-04-08 22:29       ` H.J. Lu
2010-04-09  7:41         ` Eli Zaretskii
2010-04-09 13:16           ` H.J. Lu
2010-04-09 15:08             ` Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='000c01cad75a$b751a490$25f4edb0$@muller@ics-cnrs.unistra.fr' \
    --to=pierre.muller@ics-cnrs.unistra.fr \
    --cc=gdb-patches@sourceware.org \
    --cc=hjl.tools@gmail.com \
    --cc=mark.kettenis@xs4all.nl \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox