Illegal subtraction in tmp-dive_1.s

Dennis Clarke dclarke at blastwave.org
Thu Apr 16 16:13:36 CEST 2009


>
>> [I accidentally mailed this just to the reporter.]
>>
>> Please try this patch:
>>
>> diff -r 0a3e77042675 mpn/x86/x86-defs.m4
>> --- a/mpn/x86/x86-defs.m4	Tue Apr 14 14:08:33 2009 +0200
>> +++ b/mpn/x86/x86-defs.m4	Thu Apr 16 13:16:21 2009 +0200
>> @@ -934,7 +934,7 @@
>>  L(movl_eip_`'substr($2,1)):
>>  	movl	(%esp), $2
>>  	ret_internal
>> -	SIZE(`$1',.-`$1')')
>> +	SIZE($'`1, .-$'`1)')
>>
>>          call    L(movl_eip_`'substr($2,1))
>>          addl    $_GLOBAL_OFFSET_TABLE_, $2
>>
>> (I cannot yet commit this to the public GMP repo, since I need to learn
>> about mercurial tags and branches first.)
>>
>> --
>> Torbjörn
>
> woo hoo !
>
> Seems to be compiling fine now :-)
>
> $ ls -lap .libs/lib*
> -rw-r--r--   1 dclarke  csw      1869704 Apr 16 14:07 .libs/libgmp.a
> lrwxrwxrwx   1 dclarke  csw           12 Apr 16 14:07 .libs/libgmp.la ->
> ../libgmp.la
> -rw-r--r--   1 dclarke  csw          783 Apr 16 14:07 .libs/libgmp.lai
> lrwxrwxrwx   1 dclarke  csw           15 Apr 16 14:07 .libs/libgmp.so ->
> libgmp.so.3.5.0*
> lrwxrwxrwx   1 dclarke  csw           15 Apr 16 14:07 .libs/libgmp.so.3 ->
> libgmp.so.3.5.0*
> -rwxr-xr-x   1 dclarke  csw      1298748 Apr 16 14:07
> .libs/libgmp.so.3.5.0
> -rw-r--r--   1 dclarke  csw      1356280 Apr 16 14:07 .libs/libgmpxx.a
> lrwxrwxrwx   1 dclarke  csw           14 Apr 16 14:07 .libs/libgmpxx.la ->
> ../libgmpxx.la
> -rw-r--r--   1 dclarke  csw          850 Apr 16 14:07 .libs/libgmpxx.lai
> lrwxrwxrwx   1 dclarke  csw           17 Apr 16 14:07 .libs/libgmpxx.so ->
> libgmpxx.so.4.1.0*
> lrwxrwxrwx   1 dclarke  csw           17 Apr 16 14:07 .libs/libgmpxx.so.4
> -> libgmpxx.so.4.1.0*
> -rwxr-xr-x   1 dclarke  csw      1320372 Apr 16 14:07
> .libs/libgmpxx.so.4.1.0
> $
>
> That is with Studio Express 3/09 on Solaris 10 AMD64 but ABI==32 and
> -xarch=386.
>
> $ file .libs/libgmp.so.3.5.0
> .libs/libgmp.so.3.5.0: ELF 32-bit LSB dynamic lib 80386 Version 1 [MMX
> FPU], dynamically linked, not stripped
> $ file .libs/libgmpxx.so.4.1.0
> .libs/libgmpxx.so.4.1.0: ELF 32-bit LSB dynamic lib 80386 Version 1,
> dynamically linked, not stripped
>
> make check is running now

failures :-(

PASS: t-set_f
check_in: result wrong
  i=1 zeros=0 neg=0
  got_ret  5
  want_ret 5
  got      =0x81000000
  want     =0x81
/bin/bash: line 4:  7283 Abort                   (core dumped) ${dir}$tst
FAIL: t-io_raw
wrong at data[3]
    count=1 order=1  size=4 endian=1 nail=0  align=0
    got =0x78563412
    want=0x12345678
/bin/bash: line 4:  7303 Abort                   (core dumped) ${dir}$tst
FAIL: t-import
wrong result data
    at data[4]  align=0
    src "0x12345678"
    src=0x12345678
    order=1  size=4 endian=1 nail=0
    want count 1
    got count  1
    want 0x12, 0x34, 0x56, 0x78,
    got  0x78, 0x56, 0x34, 0x12,
/bin/bash: line 4:  7323 Abort                   (core dumped) ${dir}$tst
FAIL: t-export
PASS: t-pprime_p
PASS: t-nextprime
==================================
3 of 58 tests failed
Please report to gmp-bugs at swox.com
==================================

This looks to be very familiar.

Dennis




More information about the gmp-discuss mailing list