[openssl-dev] weird linker warnings on solaris 11

Andy Polyakov appro at openssl.org
Wed Aug 17 09:01:32 UTC 2016


>>> I went back to the 12.4 compiler which works very well, waste of my time
>>> to debug Oracle compiler, as we wont see any patches released anyway (no support here)
>>
>> And I installed vendor compiler, 12.5, and I don't observe linker
>> warnings...
> 
>    interesting, can I ask which Solaris version you were running ?
>    I was running 11.3 (no SRU's), so still concerned this might
>    come back when Solaris 12 ships

11.3 too. But probably more relevant question is what is your *linker*
version. Question is more or less rhetorical, because I'm not in
position to draw any conclusions based on particular version number. I
can only state that I myself get 5.11-1.2458 in reply to 'ld -V'. Though
it might be worth noting that cc calls /usr/ccs/bin/ld, while gcc -
/usr/bin/ld. But in my case these two are identical (though not hard- or
sym-linked).

>> On related note one should probably point out that x86[_64] compilation
>> with vendor compiler leaves out AVX and Broadwell code paths. This means
>> that you won't get adequate performance on latest hardware. But gcc
>> build should work with application compiled with vendor compiler, so why
>> not adhere to just that? I mean build OpenSSL with gcc and your
>> application with compiler of your choice, be it gcc or any particular
>> vendor compiler version.
>>
> 
>    I may do that. I wasnt aware that AVX/Broadwell didnt build with cc (64-bit)
>    I was aware of lack of 32-bit asm support, so my 32-bit builds were using gcc
>    Thanks for looking.

To be completely accurate it boils down to *assembler* rather than
compiler. If gcc used vendor assembler, /usr/ccs/bin/as, then
AVX/Broadwell code would be left out too. But fortunately gcc available
from Oracle repository uses /usr/gnu/bin/as, and version I have is
2.23.1, which is sufficient for AVX1, AVX2 and Broadwell.



More information about the openssl-dev mailing list