Date: Fri, 13 Jan 2012 01:00:57 +0100 From: Marius Strobl <marius@alchemy.franken.de> To: Ed Schouten <ed@freebsd.org> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r230025 - head/contrib/compiler-rt/lib/sparc64 Message-ID: <20120113000057.GA23960@alchemy.franken.de> In-Reply-To: <201201121755.q0CHtMA2020344@svn.freebsd.org>
index | next in thread | previous in thread | raw e-mail
On Thu, Jan 12, 2012 at 05:55:22PM +0000, Ed Schouten wrote: > Author: ed > Date: Thu Jan 12 17:55:22 2012 > New Revision: 230025 > URL: http://svn.freebsd.org/changeset/base/230025 > > Log: > Add SPARC64 version of div/mod written in assembly. > > This version is similar to the code shipped with libgcc. It is based on > the code from the SPARC64 architecture manual, provided without any > restrictions. > > Tested by: flo@ > > +#include "../assembly.h" > + > +.text > + .align 4 > + <...> > +ifelse( ANSWER, `quotient', ` > +DEFINE_COMPILERRT_FUNCTION(__udivsi3) > + save %sp,-64,%sp ! do this for debugging Uhm, these are V8-specific, for V9 the C compiler frame size should be 192 instead of 64 and the function alignment should be 32 instead of 4 bytes (at least with GCC and US1-optimizations enabled as we default to on sparc64), see <machine/asm.h>. However, given that these functions only seem to obtain new register window for debugging purposes you probably alternatively could just remove the saves and the corresponding restores completely. Mariushome | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120113000057.GA23960>
