[openssl-dev] 32 bit compilation of armv8 assembly support(openssl-1.0.2a)

Andy Polyakov appro at openssl.org
Wed Jun 17 20:36:38 UTC 2015


First of all let's establish ground rule. In order for something to be
supported we ought to have access to platform, hardware is preferred,
emulator can be acceptable. It naturally also includes tool chain and
minimal ecosystem in form of working run-time. You refer to
releases.linaro.org, but is there mabi=ilp32 libc? I don't see one. I
have Debian jessie on 96board, but is there ilp32 libc available? I
don't see one. Is executable format in question widely supported by
kernel? Mine says "exec format error"... In other words to me ilp32 is
not viable option, which makes it impossible to support at this point.

> I am compiling using the linaro aarch64 compiler for ILP32 ABI.
> *linux-armv4 *compilation
> with option -march =armv8_a  giving lots of compilation errors as
> compiler does not
> supports mnemonics  . So I have tried to compile with new configuration
> for ilp32
> with "aarch64_asm".
> 
> "linux-armilp32","gcc: -O3 -mabi=ilp32 -Wall::-D_REENTRANT::-ldl:
> SIXTY_FOUR_BIT RC4_CHAR RC4_CHUNK  DES_INT DES_UNROLL BF_PTR:
> ${aarch64_asm}::dlfcn:linux-shared:-fPIC:-mabi=ilp32:
> .so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
> 
> In compilation with this configuration getting error* "cannot represent 
> BFD_RELOC_64 relocation in this object file format" *in sha1-armv8.s.  

Obviously it would require some adjustments, because mabi=ilp32 was not
considered when it was written. It might be sufficient to replace .quad
with .long, but there is no way for me to tell for reasons discussed in
the beginning. So that if there is some serious interest, then you have
to explain yourself better than providing reference to releases.linaro.org.


More information about the openssl-dev mailing list