Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 23 Feb 2015 03:21:48 +0200
From:      Konstantin Belousov <kostikbel@gmail.com>
To:        Nathan Whitehorn <nwhitehorn@FreeBSD.org>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org
Subject:   Re: svn commit: r279189 - in head/sys/powerpc: aim fpu include powerpc
Message-ID:  <20150223012148.GN74514@kib.kiev.ua>
In-Reply-To: <201502222140.t1MLeSFg075690@svn.freebsd.org>
References:  <201502222140.t1MLeSFg075690@svn.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Feb 22, 2015 at 09:40:28PM +0000, Nathan Whitehorn wrote:
> Author: nwhitehorn
> Date: Sun Feb 22 21:40:27 2015
> New Revision: 279189
> URL: https://svnweb.freebsd.org/changeset/base/279189
> 
> Log:
>   Kernel support for the Vector-Scalar eXtension (VSX) found on the POWER7
>   and POWER8. This instruction set unifies the 32 64-bit scalar floating
>   point registers with the 32 128-bit vector registers into a single bank
>   of 64 128-bit registers. Kernel support mostly amounts to saving and
>   restoring the wider version of the floating point registers and making
>   sure that both scalar FP and vector registers are enabled once a VSX
>   instruction is executed. get_mcontext() and friends currently cannot
>   see the high bits, which will require a little more work.
>   
>   As the system compiler (GCC 4.2) does not support VSX, making use of this
>   from userland requires either newer GCC or clang.

Handling the similar issue (exploding of the machine state size) for x86
resulted in the creation of the getcontextx(3) API.  It is both get/set
context(2) syscalls  and signal handling which require modifications.

For signal handlers and sigreturn(2), it is possible to make it transparent
for the consumers, but not for *context(2), since mcontext_t is explicit
type allocated by callers.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20150223012148.GN74514>