All of lore.kernel.org
 help / color / mirror / Atom feed
From: Adrian Cox <apc@agelectronics.co.uk>
To: Giuliano Pochini <pochini@denise.shiny.it>
Cc: LinuxPPC-Dev <linuxppc-dev@lists.linuxppc.org>,
	Debian PowerPC <debian-powerpc@lists.debian.org>
Subject: Re: Altivec and binary compatibility
Date: Mon, 07 Feb 2000 18:06:58 +0000	[thread overview]
Message-ID: <389F09C2.18FD4AA5@agelectronics.co.uk> (raw)
In-Reply-To: 389EE09A.571A6C26@denise.shiny.it


Giuliano Pochini wrote:
Giuliano Pochini wrote:

> > As the jmp_buf is a different size in Altivec and non-Altivec code
>
> Because with Altivec we need to save V registers, right ?  Well, I suppose
> intel developers had the same problem with P-III "vector" unit. How did they
> solve the problem ?

As far as I can tell, by ignoring it, and making the assumption that
only low-level libraries will use the vector registers.  I plan to take
a similar approach, and warn users not to mix Altivec and exceptions.

> > To add to the problem, throwing exceptions on an error is just what a
> > modern C++ library is supposed to do.  Throwing or catching an exception
> > in Altivec code will produce sequences that cannot execute on a G3
>
> Why ?? (sorry for my ignorance...)

I haven't studied GCC's implementation of exceptions in great detail.
The compiler saves and restores all the non-transient registers as part
of the exception sequence. When generating Altivec code this produces
stvx and lvx instructions, which will cause an illegal instruction
exception on G3 processors.

- Adrian Cox

** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

  reply	other threads:[~2000-02-07 18:06 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-02-04 10:29 Altivec and binary compatibility Adrian Cox
2000-02-07 15:11 ` Giuliano Pochini
2000-02-07 18:06   ` Adrian Cox [this message]
2000-02-08 20:11     ` Giuliano Pochini
2000-02-11  9:41       ` Adrian Cox
     [not found]     ` <v03010d02b4cce4346bac@[192.168.1.16]>
     [not found]       ` <38A7D0FD.D6A7E95D@agelectronics.co.uk>
2000-02-20  1:18         ` Giuliano Pochini
2000-02-20 16:00         ` Giuliano Pochini

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=389F09C2.18FD4AA5@agelectronics.co.uk \
    --to=apc@agelectronics.co.uk \
    --cc=debian-powerpc@lists.debian.org \
    --cc=linuxppc-dev@lists.linuxppc.org \
    --cc=pochini@denise.shiny.it \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.