On Wed, 26 Feb 2014, Andy Polyakov via RT wrote:
| > Platform: UnixWare 7.1.4 MP4
| > OpenSSL 1.0.2 beta1
| >
| > It looks like the latest assembler changes to sha and aes break
| > on USL assemblers.
| >
| > ----------
| > making all in crypto/sha...
| > cc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include
-DOPENSSL_THREADS -Kthread -DDSO_DLFCN -DHAVE_DLFCN_H -D__i386__ -O -DFILIO_H
-Kalloca -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 -o sha256-586.o
sha256-586.s
| > UX:as: ERROR: sha256-586.s:28:defined relocatable values from the same
section required, op -
| > *** Error code 1 (bu21)
| > UX:make: ERROR: fatal error.
| > ----------
|
|
http://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=d00ae7cf7019847c5d35728b01b22461a01bb336
I can confirm that commit works here.
| > ----------
| > making all in crypto/aes...
| > cc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include
-DOPENSSL_THREADS -Kthread -DDSO_DLFCN -DHAVE_DLFCN_H -D__i386__ -O -DFILIO_H
-Kalloca -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 -o aes-586.o aes-586.s
| > UX:as: ERROR: aes-586.s:1003:defined relocatable values from the same
section required, op -
| > UX:as: ERROR: aes-586.s:2195:defined relocatable values from the same
section required, op -
| > UX:as: ERROR: aes-586.s:2251:defined relocatable values from the same
section required, op -
| > *** Error code 1 (bu21)
| > UX:make: ERROR: fatal error.
| > ----------
|
| But how did it work in 1.0.0? I mean this is not code that appeared in
| 1.0.2.
Interesting. I've been running a 1.0.1f-dev version on one of my
UnixWare 7.1.4 boxes for quite soem time now.
$ /opt/bin/openssl version -a
OpenSSL 1.0.1f-dev 14 May 2013
built on: Mon May 27 15:49:18 PDT 2013
platform: unixware-7
options: bn(64,32) rc4(8x,mmx) des(ptr,risc1,16,long) idea(int) blowfish(idx)
compiler: cc -Kpic -DOPENSSL_PIC -DZLIB_SHARED -DZLIB -DOPENSSL_THREADS
-Kthread -DDSO_DLFCN -DHAVE_DLFCN_H -Kpentium_pro -D__i386__ -O -DFILIO_H
-Kalloca -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
OPENSSLDIR: "/etc/ssl"
crypto/aes/asm/aes-586.pl has not changes between the version I am
running and the released 1.0.1f but
gdiff -ru openssl-1.0.1f/crypto/aes/asm/aes-586.pl \
openssl-1.0.2-beta1/crypto/aes/asm/aes-586.pl
produces a 496 line file.
Doing a diff -u on the crypto/aes/aes-586.s files shows the
changes that chokes the assembler.
........
--- Xopenssl-1.0.1f/crypto/aes/aes-586.s 2014-02-24 23:09:12.771751012
-0800
+++ openssl-1.0.2-beta1/crypto/aes/aes-586.s 2014-02-24 22:07:47.869751012
-0800
@@ -994,8 +1000,7 @@
call .L004pic_point
.L004pic_point:
popl %ebp
- leal _GLOBAL_OFFSET_TABLE_+[.-.L004pic_point](%ebp),%eax
- movl OPENSSL_ia32cap_P@GOT(%eax),%eax
+ leal OPENSSL_ia32cap_P-.L004pic_point(%ebp),%eax
leal .LAES_Te-.L004pic_point(%ebp),%ebp
leal 764(%esp),%ebx
subl %ebp,%ebx
@@ -2185,8 +2192,7 @@
call .L010pic_point
.L010pic_point:
popl %ebp
- leal _GLOBAL_OFFSET_TABLE_+[.-.L010pic_point](%ebp),%eax
- movl OPENSSL_ia32cap_P@GOT(%eax),%eax
+ leal OPENSSL_ia32cap_P-.L010pic_point(%ebp),%eax
leal .LAES_Td-.L010pic_point(%ebp),%ebp
leal 764(%esp),%ebx
subl %ebp,%ebx
@@ -2242,8 +2248,7 @@
call .L013pic_point
.L013pic_point:
popl %ebp
- leal _GLOBAL_OFFSET_TABLE_+[.-.L013pic_point](%ebp),%eax
- movl OPENSSL_ia32cap_P@GOT(%eax),%eax
+ leal OPENSSL_ia32cap_P-.L013pic_point(%ebp),%eax
cmpl $0,40(%esp)
leal .LAES_Te-.L013pic_point(%ebp),%ebp
jne .L014picked_te
........
Thanks for all your help.
|
| > It does not seem to like lines like
| > leal OPENSSL_ia32cap_P-.L001K256(%ebp),%edx
|
| Yes, it seems so.
|
--
Tim Rice Multitalents (707) 456-1146
[email protected]
______________________________________________________________________
OpenSSL Project http://www.openssl.org
Development Mailing List [email protected]
Automated List Manager [email protected]