[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 2/5] xen/arm: introduce __lshrdi3 and __aeabi_llsr
On Thu, 9 Aug 2012, Ian Campbell wrote: > On Mon, 2012-08-06 at 15:12 +0100, Stefano Stabellini wrote: > > Taken from Linux. > > > > Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx> > > Any idea what lshrdi means? I am not sure TBH, but it is one of the needed libgcc functions. > Anyway, given that this is presumably required by code which gcc > generates and that it comes direct from Linux: > > Acked-by: Ian Campbell <ian.campbell@xxxxxxxxxx> > > and pushed to my arm-for-4.3 branch. > > > --- > > xen/arch/arm/lib/Makefile | 2 +- > > xen/arch/arm/lib/lshrdi3.S | 54 > > ++++++++++++++++++++++++++++++++++++++++++++ > > 2 files changed, 55 insertions(+), 1 deletions(-) > > create mode 100644 xen/arch/arm/lib/lshrdi3.S > > > > diff --git a/xen/arch/arm/lib/Makefile b/xen/arch/arm/lib/Makefile > > index cbbed68..4cf41f4 100644 > > --- a/xen/arch/arm/lib/Makefile > > +++ b/xen/arch/arm/lib/Makefile > > @@ -2,4 +2,4 @@ obj-y += memcpy.o memmove.o memset.o memzero.o > > obj-y += findbit.o setbit.o > > obj-y += setbit.o clearbit.o changebit.o > > obj-y += testsetbit.o testclearbit.o testchangebit.o > > -obj-y += lib1funcs.o div64.o > > +obj-y += lib1funcs.o lshrdi3.o div64.o > > diff --git a/xen/arch/arm/lib/lshrdi3.S b/xen/arch/arm/lib/lshrdi3.S > > new file mode 100644 > > index 0000000..3e8887e > > --- /dev/null > > +++ b/xen/arch/arm/lib/lshrdi3.S > > @@ -0,0 +1,54 @@ > > +/* Copyright 1995, 1996, 1998, 1999, 2000, 2003, 2004, 2005 > > + Free Software Foundation, Inc. > > + > > +This file is free software; you can redistribute it and/or modify it > > +under the terms of the GNU General Public License as published by the > > +Free Software Foundation; either version 2, or (at your option) any > > +later version. > > + > > +In addition to the permissions in the GNU General Public License, the > > +Free Software Foundation gives you unlimited permission to link the > > +compiled version of this file into combinations with other programs, > > +and to distribute those combinations without any restriction coming > > +from the use of this file. (The General Public License restrictions > > +do apply in other respects; for example, they cover modification of > > +the file, and distribution when not linked into a combine > > +executable.) > > + > > +This file is distributed in the hope that it will be useful, but > > +WITHOUT ANY WARRANTY; without even the implied warranty of > > +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU > > +General Public License for more details. > > + > > +You should have received a copy of the GNU General Public License > > +along with this program; see the file COPYING. If not, write to > > +the Free Software Foundation, 51 Franklin Street, Fifth Floor, > > +Boston, MA 02110-1301, USA. */ > > + > > + > > +#include <xen/config.h> > > +#include "assembler.h" > > + > > +#ifdef __ARMEB__ > > +#define al r1 > > +#define ah r0 > > +#else > > +#define al r0 > > +#define ah r1 > > +#endif > > + > > +ENTRY(__lshrdi3) > > +ENTRY(__aeabi_llsr) > > + > > + subs r3, r2, #32 > > + rsb ip, r2, #32 > > + movmi al, al, lsr r2 > > + movpl al, ah, lsr r3 > > + ARM( orrmi al, al, ah, lsl ip ) > > + THUMB( lslmi r3, ah, ip ) > > + THUMB( orrmi al, al, r3 ) > > + mov ah, ah, lsr r2 > > + mov pc, lr > > + > > +ENDPROC(__lshrdi3) > > +ENDPROC(__aeabi_llsr) > > > _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |