On Saturday 28 August 2010 12:29:56 Cactus wrote:
> On Aug 28, 11:56 am, "jason" <ja...@njkfrudils.plus.com> wrote:
> > ----- Original Message -----
> > From: "Cactus" <rieman...@gmail.com>
> > To: "mpir-devel" <mpir-devel@googlegroups.com>
> > Sent: Saturday, August 28, 2010 10:27 AM
> > Subject: [mpir-devel] Re: mingw64
> > 
> > On Aug 28, 9:59 am, "jason" <ja...@njkfrudils.plus.com> wrote:
> > > Hi
> > > 
> > > I think I know why the mingw64 dll builds fail , for multiple functions
> > > files ie aors_err2_n.asm , in the MSVC build yasm emits both functions
> > > in a single "unit" , whereas under mingw64 we create two links add and
> > > sub versions (like we do for unix) , and also yasm still emits both
> > > functions , so we end up with two copys. The same must happen in the
> > > static build , but it doesn't seem to matter?
> > > I was planning to get rid of such complications ( or rather move them
> > > to development machines only , much like autotools generates
> > > Makefile.in) , a small script should easily take of it.
> > 
> > I wwould be very happy to make several changes that are related to
> > this issue, all of which would make all the Windows builds much
> > easier:
> > 
> > 1. All files emit only one routine and only one symbol (this would
> > expand the source for some 'carry in' and 'no carry in' variants);
> > -----------------------
> > I was hoping to keep files with multiple entry points , but yeah , I cant
> > see how we can do it in general. For the add_n and add_nc we could do it
> > with macros , but for the divide it's a bit harder , and we might need to
> > maintain the function version for full backwards dll compatibility.
> > --------------
> > 2. A strict equality between C and assembler file names and the
> > symbols they emit (ignoring the prefix);
> > 3. A new extension (i.e not c, cc, as, asm, ..)  for files that are
> > not compiled directly but are included in other files.
> > ----------------------
> > makes sense
> > ---------------------
> > I don't think it matters issuing HAVE_NATIVE defines for all assembler
> > symbols even if they aare complete C replacements so we can (I think)
> > ignore this.
> > ------------------------
> > I think we may have to keep some , mainly for those combined functions
> > that would require temp space if we dont have a native one
> 
> Sorry Jason - I think I phrased this badly.  I wasn't suggesting that
> we remove any but rather just issuing HAVE_NATIVE defines for all
> assembler code symbols on the assumption that symbols from files that
> are complete replacements for C files will exist but won't be used.
> But, maybe I am wrong about this?
> 

I'm not totally sure what we do , the only time we really need them is where 
the existence of a function on one cpu is a win , but on another cpu it would 
be a lose.

> Interestingly a further simplification of the Windows build would be
> to add a guard in C files with complete assembler replacements to
> remove all  the code - they would then be included but be empty and I
> would not have to manually exclude them as I do now.
> 
>    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-de...@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