> I did a quick test, and found that 'make test' succeeds for -O0, -O1,
> -Os, and -Oz, but fails for -O2 and -O3. This is using Apple's cc
> which is based on clang-3.3 (it describes itself as "clang-500.1.58
> based on LLVM 3.3svn") and openssl-1.0.1e.
> 
> It fails in the "NIST test vectors" stage of NIST curve P-256
> (optimized implementation).
> 
> I'm not sure if there's a way to ask Clang what particular
> transformations it enables for each optimization level, so I didn't
> investigate further. -Os and -Oz are documented as being "like" -O2,
> so that may be the minimal difference between a working and
> nonworking compile.

Keep in mind 
https://rt.openssl.org/Ticket/Display.html?id=2981&user=guest&pass=guest. 
In other words Clang does have a record of having compiler bugs. And 
with any compiler bug, they strike in unexpected places and make no 
apparent sense. Finding workarounds is a gamble [in sense that there 
might none], but prerequisite is ability to reproduce the problem and 
time. It makes more sense to report the problem to compiler vendor.


______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [email protected]
Automated List Manager                           [email protected]

Reply via email to