On 28 April 2011 17:21, Jason <ja...@njkfrudils.plus.com> wrote:
> On Thursday 28 April 2011 15:26:26 jason wrote:
>> On Apr 27, 10:43 pm, jason <ja...@njkfrudils.plus.com> wrote:
>> > Hi
>> >
>> > I going to remove some minor optimizations for a fat build on the K6
>> > and K7 cpu's , again I think that anyone running on these cpu's would
>> > use a normal build anyway , and I think they are not made anymore even
>> > as embedded chips.
>> >
>> > Jason
>>
>> I've removed the old crud above.
>>
>> In gmp-impl we have these functions which have asm in them
>>
>> popc_limb
>> bswap_limb + varients
>> ulong_parity
>> mpn_incr
>> mpn_decr
>>
>> so I think we should move then to the arch specific longlong , the C
>> version we will leave in gmp-imp.h rather than move them to
>> longlong_post.h for strict compatibility (ie for people who want
>> popc_limb and only include gmp-impl.h not longlong.h). This means
>> including gmp-impl and longlong gives exactly the same code as
>> before , whereas including just gmp-impl.h will give you the C version
>> only. Given the nature of the macros above I think this is best as
>> popc,bswap,parity are not used much and popc and parity have GCC
>> intrinsics. The mpn_incr/decr are important but the asm code is for
>> 32bit x86 only and as the assumption of this macro is ment to be that
>> it loops very few(<2) times , a bit of C code should be faster.
>>
>> So the changes will be completely compatible and only slightly
>> slower(if at all) on these very odd cases and in the case that
>> longlong is not included. I'll go ahead with this unless anyone think
>> this is a bad idea.
>>
>> Jason
>
> Looks like I managed to break a few thing so far :)
> On 32bit Linux with a FAT build
> libtool: compile:  gcc-4.1 -std=gnu99 -DHAVE_CONFIG_H -I. -
> I/home/jasonmoxham/gcc45.yBhM0z/mpir-2.3.0/mpn -I.. -D__GMP_WITHIN_GMP -
> I/home/jasonmoxham/gcc45.yBhM0z/mpir-2.3.0 -DOPERATION_mul_fft -m32 -O2 -
> fomit-frame-pointer -c mul_fft.c  -fPIC -DPIC -o .libs/mul_fft.o
> mul_fft.c:166: error: initializer element is not constant
> mul_fft.c:166: error: (near initialization for 'mpn_fft_table[0][0]')
> mul_fft.c:166: error: initializer element is not constant
> mul_fft.c:166: error: (near initialization for 'mpn_fft_table[0][1]')
> mul_fft.c:166: error: initializer element is not constant
> mul_fft.c:166: error: (near initialization for 'mpn_fft_table[0][2]')
> mul_fft.c:166: error: initializer element is not constant
> mul_fft.c:166: error: (near initialization for 'mpn_fft_table[0][3]')
> mul_fft.c:166: error: initializer element is not constant
> mul_fft.c:166: error: (near initialization for 'mpn_fft_table[0][4]')
> mul_fft.c:166: error: initializer element is not constant
> mul_fft.c:166: error: (near initialization for 'mpn_fft_table[0][5]')
> mul_fft.c:167: error: initializer element is not constant
> mul_fft.c:167: error: (near initialization for 'mpn_fft_table[1][0]')
> mul_fft.c:167: error: initializer element is not constant
> mul_fft.c:167: error: (near initialization for 'mpn_fft_table[1][1]')
> mul_fft.c:167: error: initializer element is not constant
> mul_fft.c:167: error: (near initialization for 'mpn_fft_table[1][2]')
> mul_fft.c:167: error: initializer element is not constant
> mul_fft.c:167: error: (near initialization for 'mpn_fft_table[1][3]')
> mul_fft.c:167: error: initializer element is not constant
> mul_fft.c:167: error: (near initialization for 'mpn_fft_table[1][4]')
> mul_fft.c:167: error: initializer element is not constant
> mul_fft.c:167: error: (near initialization for 'mpn_fft_table[1][5]')
> make[2]: *** [mul_fft.lo] Error 1
> make[2]: *** Waiting for unfinished jobs....
> libtool: compile:  gcc-4.1 -std=gnu99 -DHAVE_CONFIG_H -I. -
> I/home/jasonmoxham/gcc45.yBhM0z/mpir-2.3.0/mpn -I.. -D__GMP_WITHIN_GMP -
> I/home/jasonmoxham/gcc45.yBhM0z/mpir-2.3.0 -DOPERATION_mul -m32 -O2 -fomit-
> frame-pointer -c mul.c -o mul.o >/dev/null 2>&1
> make[2]: Leaving directory `/home/jasonmoxham/gcc45.yBhM0z/gcc45/mpn'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/home/jasonmoxham/gcc45.yBhM0z/gcc45'
> make: *** [all] Error 2
>
> Can't figure out where this is coming from.....

It looks like a broken gmp-mparam file. Check for punctuation in the
wrong place....

> and here debian hppa
>
> libtests.la ../libmpir.la
> libtool: link: gcc-4.1 -std=gnu99 -O2 -mpa-risc-2-0 -o .libs/t-sub t-sub.o
> ./.libs/libtests.a /home/jasonmoxham/dingo.NcZzem/dingo/.libs/libmpir.so
> ../.libs/libmpir.so
> make[4]: Leaving directory `/home/jasonmoxham/dingo.NcZzem/dingo/tests'
> make  check-TESTS
> make[4]: Entering directory `/home/jasonmoxham/dingo.NcZzem/dingo/tests'
> make[5]: Entering directory `/home/jasonmoxham/dingo.NcZzem/dingo/tests'
> PASS: t-bswap
> PASS: t-constants
> PASS: t-count_zeros
> PASS: t-gmpmax
> PASS: t-hightomask
> PASS: t-modlinv
> PASS: t-parity
> PASS: t-popc
> /bin/sh: line 1: 28496 Aborted                 "$tst" > t-sub.log-t 2>&1
> FAIL: t-sub

Don't know about this one. Is it definitely not broken before your
changes? And repeatable?

>
> and here
> checking whether stripping libraries is possible... yes
> checking if libtool supports shared libraries... yes
> checking whether to build shared libraries... yes
> checking whether to build static libraries... yes
> checking how to run the C++ preprocessor... /lib/cpp
> configure: error: in `/home/jasonmoxham/gcc52.gVjeqg/gcc52':
> configure: error: C++ preprocessor "/lib/cpp" fails sanity check
> See `config.log' for more details
> gcc52
>
> which is a loongson mipsel
>
>

Looks like a broken machine to me.

>
>
>
> --
> 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.
>
>

-- 
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