> > > the test 'trsa' in the testsuite fails on ia64:
> > >
> > >    testing rsa conversions
> > >    p -> d
> > >    p -> p
> > >    d -> d
> > >    make[1]: *** [test_rsa] Error 1
> > >    make[1]: Leaving directory
> > >    `/usr/src/packages/BUILD/openssl-0.9.7_beta4/test'
> > >    make: *** [tests] Error 2
> >
> > I managed to reproduce the problem under nue (IA-64 emulator for Linux)
> > and with gcc 2.96 (the one found in nue-fs-1.2-1). It's a compiler bug:
> >
> > *** ./crypto/asn1/a_d2i_fp.c.orig     Sun Nov 24 18:14:40 2002
> > --- ./crypto/asn1/a_d2i_fp.c  Sun Nov 24 18:15:16 2002
> > ***************
> > *** 149,155 ****
> >       ASN1_CTX c;
> >       int want=HEADER_SIZE;
> >       int eos=0;
> > !     int off=0;
> >       int len=0;
> >
> >       b=BUF_MEM_new();
> > --- 149,155 ----
> >       ASN1_CTX c;
> >       int want=HEADER_SIZE;
> >       int eos=0;
> > !     size_t off=0;
> >       int len=0;
> >
> >       b=BUF_MEM_new();
> >
> > Does this help gcc 3.2.1? This patch takes me to the next failing test,
> > test/dsatest to be specific, which surely also caused by another
> > compiler bug[which I didn't track down yet].
> 
> Yes, this patch helps with gcc 3.2.1, and not only the test_rsa passes,
> but also the other test that had failed (test_sid).

Does it mean that the *whole* test suite passes? I.e. 'make test'
actually finishes completely and without error? As mentioned NUE-1.2
fails in test/dsatest...

> Hhm, so should we regard this as a fix??

Well, we have to try lower optimization level first. Can you modify
./Configure replacing -O3 with -O2 in linux-ia64 line and then re-run
'./config', 'make' and finally 'make test'? And of course provided that
you revoke the supplied workaround so that "off" is declared "int" and
*not* "size_t?" If it fails, re-try the procedure with -O. Consensus
basically is to advice to fix compilers rather than to form the code to
avoid any particular compiler bug. But exceptions were made depending on
exposure (how popular/wide-spread compiler/platform is) or performance
loss(*).

(*) for example if you confirm that some popular cipher (say DES or RC4)
or digest compiled with -O3 performs say 25-30-40% better than if
compiled with -O2. So that before you lower optimization level do run
'apps/openssl speed' and save the output for future comparison.

A.
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [EMAIL PROTECTED]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to