public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* heads up, upcoming ppc variant (e500, booke32)
@ 2002-07-23  4:57 Aldy Hernandez
  0 siblings, 0 replies; only message in thread
From: Aldy Hernandez @ 2002-07-23  4:57 UTC (permalink / raw)
  To: gcc, mark, dje

hi guys.

just an fyi, over the next week i'll be contributing the e500 port, a
32-bit booke implementation.

i'm not sure if the specs are available publicly yet.  a quick search in
google returns:

    http://www.motorola.com/mediacenter/news/detail/0,1958,568_322_23,00.html

the chip is a powerpc implementation (though david disagrees :) because of
a few quirks as rewards to floating point).  so, it'll be part of
config/rs6000/.

here's the skinny:

- gprs have an upper 32-bits only available for SIMD operations.  so
  gprs are 64-bits, but scalar operations still see 32-bits.

- the chip can do single precision floating point operations... in the
  gprs.  so it has no FPRS.

- simd types are: V2SI, V2SF, V4HI

- there's an <spe.h> that's not nearly as bad as <altivec.h> :-)

nothing out of the ordinary, except there are some issues with exception
handling that'll have to be discussed separately.  basically, dwarf2
has no way of representing register size when saving GPRs.  our current
unwinder assumes gprs are saved and restored in:

  typedef unsigned _Unwind_Word __attribute__((__mode__(__word__)));

which may not necessarily true for the e500, since we save some gprs in
64-bits, though the architecture is still 32-bit.  sigh...  i'll bring this
up later.

and there are of course, the perfunctory ppc cleanups along the way :).

cheerios.

aldy

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2002-07-23  5:17 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-07-23  4:57 heads up, upcoming ppc variant (e500, booke32) Aldy Hernandez

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).