On Thu, Sep 06, 2007 at 14:29:17 +0200, Andy Polyakov wrote:
> >I am testing out the newest version of icc (10.0.026) on a SLES 9 ia64
> >system and having troubles building openssl-0.9.8e.
> >
> >I recieve the following errors:
> >make[2]: Entering directory `/home/scottra/src/openssl-0.9.8e/crypto/sha'
> >icc -I.. -I../.. -I../../include -DOPENSSL_THREADS -D_REENTRANT
> >-DDSO_DLFCN -DHAVE_DLFCN_H -DL_ENDIAN -DTERMIO -O2 -Wall -no_cpprt
> >-Dmemcpy=__builtin_memcpy -Dmemset=__builtin_memset -DSHA1_ASM
> >-DSHA256_ASM -DSHA512_ASM -DAES_ASM -c  -o sha1-ia64.o sha1-ia64.s
> >icc: command line remark #10010: option '-no_cpprt' is deprecated and
> >will be removed in a future release. See '-help deprecated'
> 
> First of all! Could you send output from 'icc -help deprecated'. 
> Question basically is if there is suggested alternative.

Not having seen a response yet, here's the output from the 10.0.026
compiler:

cfe2.imorgan> icc -help deprecated

Deprecated Options
------------------
-alias-args            use -fargument-alias
-Ob                    use -inline-level=<n>
-c99                   use -std=c99
-create-pch            use -pch-create
-cxxlib-gcc[=dir]      use -cxxlib[=dir]
-cxxlib-icc            No replacement
-fp                    use -fomit-frame-pointer
-fpstkchk              use -fp-stack-check
-fwritable-strings     No replacement
-i-dynamic             use -shared-intel
-i-static              use -static-intel
-Kc++                  use -x c++
-no-c99                use -std=c89
-no-cpprt              use -no-cxxlib
-nobss-init            use -no-bss-init
-norestrict            use -no-restrict
-openmpP               use -openmp
-openmpS               use -openmp-stubs
-opt-report-level      use -opt-report
-qp                    use -p
-use-pch               use -pch-use
-IPF-fp-speculation    use -fp-speculation
cfe2.imorgan> 

So, -no-cxxlib would be the right choice, but -static-intel it might
be helpful to also use -static-intel.

> 
> >/home/scottra/src/openssl-0.9.8e/crypto/sha/sha1-ia64.s(21) : error
> >A2132: operand no 2: illegal register value: 0
> >/home/scottra/src/openssl-0.9.8e/crypto/sha/sha1-ia64.s(1597) : error
> >A2132: operand no 2: illegal register value: 0
> >
> >sha1-ia64.s:21 and 1597 have the same line:
> >   .save   ar.pfs,r0
> >
> >I believe these lines come from asm/sha1-ia64.pl lines 255 and 410 
> >respectively.
> >
> >I briefly read through the "IA-64 Architecture Assembly Language
> >Reference Guide" and based on my read it sure seems that r0 is one of
> >the general purpose 64-bit registers. I wonder if this is a bug in icc
> >10.0.026?
> 
> Well, r0 is special. It's a "sink"/"wired-zero" register, i.e. you can 
> write to it, but if you try to read it you'll always get 0. I can't 
> recall the reason why .save ar.pfs,r0 lines were added, but essentially 
> it's equivalent to "no-operation" and you should simply *remove* them. 
> Do not replace r0 with anything, but simply remove all occurrences of 
> .save ar.pfs,r0. A.

Good to see this explanation. I had likewise encountered this
problem a while back, but due to a lack of time I don't think
I reported it.

-- 
Iain Morgan
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       openssl-dev@openssl.org
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to