On Apr 30, 9:14 am, Jason <ja...@njkfrudils.plus.com> wrote:
> On Saturday 30 April 2011 09:05:26 Cactus wrote:
>
> > On Apr 30, 8:40 am, Jason <ja...@njkfrudils.plus.com> wrote:
> > > Hi
>
> > > I've removed the pa64 pa32 and s390 directory's and the associated
> > > configure stuff and I've moved all the asm code from gmp-impl into the
> > > architecture specific directory's and I've removed the -DNO_ASM option.
>
> > > We still work under pa64 pa32 and s390 , but we use autotool's defaults
> > > and anyone using these arch's would not be running MPIR anyway (these
> > > are old mainframe/server chips and the only reason you would be using
> > > one is that you dont want to change your software)
>
> > > You can still pass the -DNO_ASM option , but it has no effect.
>
> > > The recommended way to include mpir.h,gmp-impl,longlong if you wanted to
> > > use (say popc_limb) is to
>
> > > include mpir.h
> > > include longlong.h
> > > include gmp-impl.h
>
> > > A lot of files do it this way though
>
> > > include mpir.h
> > > include gmp-impl.h
> > > include longlong.h
>
> > > this will still work.
>
> > > Jason
>
> > For MSVC at least, longlong.h contains optimisations in defines that
> > will be overiddden by less effective definitions in gmp-impl.h if the
> > former order is used without using guards to prevent redefinitions in
> > gmp-impl.h.
>
> I thought all the def's in gmp-impl were guarded , have I missed some?

I only looked at the one I needed to track in x86_64, where I found
that the definition of BSWAP_LIMB does not define the guard BSWAP_LIMB
if it is invoked.

> > I am not arguing for the latter order but rather  for the use of one
> > of these two orders everywhere so that we know where to put
> > architecture specific optimisations.  I have guards in the MSVC
> > longlong_inc.h but I notice that they aare not used in some other
> > longlong_inc.h versions.
>
> for this we only need to guard the def's in longlong that might be defined in
> gmp-impl.

I agree but it seems to me safer to adopt one order uniformly.

> I did think of doing a similar thing for gmp-impl , ie having a _pre and _post
> and a arch specific gmp-impl

I am not sure why we have gmp-impl and longlong.h since it seems to me
that exported definitions should be in mpir.h and internal ones in gmp-
impl.h :-)

   Brian

-- 
You received this message because you are subscribed to the Google Groups 
"mpir-devel" group.
To post to this group, send email to mpir-devel@googlegroups.com.
To unsubscribe from this group, send email to 
mpir-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/mpir-devel?hl=en.

Reply via email to