On Wed, 26 Feb 2014, Andy Polyakov wrote:

> > I am sorry, but it did not help:
> 
> It surely did:-) x86cpuid did compile, didn't it:-) It's just that
> *another* problem surfaced.
> 
> > bash-2.05a# /usr/bin/perl ./Configure unixware-7-gcc no-sse2
> >         gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include 
> > -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -DL_ENDIAN
> > -DFILIO_H -O3 -fomit-frame-pointer -march=pentium -Wall
> > -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m
> > -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM
> > -DWHIRLPOOL_ASM -DGHASH_ASM -c sha_dgst.c
> > UX:as: ERROR: /var/tmp/ccYUTbOr.s:191:unknown instruction: bswapl
> > UX:as: ERROR: /var/tmp/ccYUTbOr.s:196:unknown instruction: bswapl

I don't have gcc on any of my UnixWare boxes but I tried this on a
OpenServe 6 machine (uses uixware build) with a gcc on it and it
compiled fine. I added the -S option to look at the .s file and
it does have bswapl lines in it. Here is a small snip.
........
        movl    %eax, 112(%esp)
/APP
        bswapl %ebp
/NO_APP
        addl    %ebp, %edx
        movl    %ebp, 108(%esp)
/APP
        bswapl %eax
/NO_APP
        movl    %eax, 112(%esp)
........

Then doing a 
         gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include  \
 -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -DL_ENDIAN \
 -DFILIO_H -O3 -fomit-frame-pointer -march=pentium -Wall \
 -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m \
 -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM \
 -DWHIRLPOOL_ASM -DGHASH_ASM -c sha_dgst.s
worked too.

> I.e. assembler doesn't recognize even bswap. Well, when it comes to
> out-of-date platforms, there is [invisible] line past which one gets
> reluctant to address problems. Instead one rather opts for existing
> tweaks. There is always option to pass no-asm, but in this case you
> should also be able to pass 386 to avoid fancy instructions. [Option I'm
> reluctant to implement is to manually encode bswap in
> crypto/perlasm/x86asm.pl]. Maybe Tim can shed some light how come does
> it work for him, i.e. maybe there are assembler updates...

On my UnixWare 7.1.4 MP4 boxes I have
UX:cc: INFO: Optimizing C Compilation System  (CCS) 4.2  05/13/08 
(uw714mp4.bl3h)
UX:ld: INFO: Optimizing C Compilation System  (CCS) 4.2  05/13/08 
(uw714mp4.bl3h)
UX:as: INFO:  Optimizing C Compilation System  (CCS) 4.2  05/13/08 
(uw714mp4.bl3h)

UnixWare 7.1.4+ has
UX:cc: INFO: Optimizing C Compilation System  (CCS) 4.2  04/24/13 
(uw714mp5.bl3s)
UX:ld: INFO: Optimizing C Compilation System  (CCS) 4.2  04/24/13 
(uw714mp5.bl3s)
UX:as: INFO:  Optimizing C Compilation System  (CCS) 4.2  04/24/13 
(uw714mp5.bl3s)

-- 
Tim Rice                                Multitalents    (707) 456-1146
[email protected]


______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [email protected]
Automated List Manager                           [email protected]

Reply via email to