[openssl-commits] [openssl] OpenSSL_1_0_2-stable update

Andy Polyakov appro at openssl.org
Sat Nov 26 21:25:53 UTC 2016


The branch OpenSSL_1_0_2-stable has been updated
       via  c477f8e7165d30c5c8ca98f7409714f56dc2048c (commit)
      from  f47201b3279b3fd16f90ba512e5b203e4944b30c (commit)


- Log -----------------------------------------------------------------
commit c477f8e7165d30c5c8ca98f7409714f56dc2048c
Author: Andy Polyakov <appro at openssl.org>
Date:   Fri Nov 25 17:50:37 2016 +0100

    INSTALL: clarify 386 and no-sse2 options.
    
    This is 1.0.2-specific reformat of 5ae5dc96610f0a598dac9d2f267b5c0ddd77b2e4.
    
    Reviewed-by: Rich Salz <rsalz at openssl.org>

-----------------------------------------------------------------------

Summary of changes:
 Configure |  5 +++--
 INSTALL   | 45 ++++++++++++++++++++++++++-------------------
 2 files changed, 29 insertions(+), 21 deletions(-)

diff --git a/Configure b/Configure
index c26c9d7..5da7cad 100755
--- a/Configure
+++ b/Configure
@@ -58,12 +58,13 @@ my $usage="Usage: Configure [no-<cipher> ...] [enable-<cipher> ...] [experimenta
 # zlib-dynamic	Like "zlib", but the zlib library is expected to be a shared
 #		library and will be loaded in run-time by the OpenSSL library.
 # sctp          include SCTP support
-# 386           generate 80386 code
 # enable-weak-ssl-ciphers
 #		Enable EXPORT and LOW SSLv3 ciphers that are disabled by
 #		default.  Note, weak SSLv2 ciphers are unconditionally
 #		disabled.
-# no-sse2	disables IA-32 SSE2 code, above option implies no-sse2
+# 386		generate 80386 code in assembly modules
+# no-sse2	disables IA-32 SSE2 code in assembly modules, the above
+#		mentioned '386' option implies this one
 # no-<cipher>   build without specified algorithm (rsa, idea, rc5, ...)
 # -<xxx> +<xxx> compiler options are passed through 
 #
diff --git a/INSTALL b/INSTALL
index 475ac92..aa7e35f 100644
--- a/INSTALL
+++ b/INSTALL
@@ -74,24 +74,26 @@
 
   no-asm        Do not use assembler code.
 
-  386           Use the 80386 instruction set only (the default x86 code is
-                more efficient, but requires at least a 486). Note: Use
-                compiler flags for any other CPU specific configuration,
-                e.g. "-m32" to build x86 code on an x64 system.
-
-  no-sse2	Exclude SSE2 code pathes. Normally SSE2 extention is
-		detected at run-time, but the decision whether or not the
-		machine code will be executed is taken solely on CPU
-		capability vector. This means that if you happen to run OS
-		kernel which does not support SSE2 extension on Intel P4
-		processor, then your application might be exposed to
-		"illegal instruction" exception. There might be a way
-		to enable support in kernel, e.g. FreeBSD kernel can be
-		compiled with CPU_ENABLE_SSE, and there is a way to
-		disengage SSE2 code pathes upon application start-up,
-		but if you aim for wider "audience" running such kernel,
-		consider no-sse2. Both 386 and no-asm options above imply
-		no-sse2.
+  386           In 32-bit x86 builds, when generating assembly modules,
+                use the 80386 instruction set only (the default x86 code
+                is more efficient, but requires at least a 486). Note:
+                This doesn't affect code generated by compiler, you're
+                likely to complement configuration command line with
+                suitable compiler-specific option.
+
+  no-sse2       Exclude SSE2 code paths from 32-bit x86 assembly modules.
+                Normally SSE2 extension is detected at run-time, but the
+                decision whether or not the machine code will be executed
+                is taken solely on CPU capability vector. This means that
+                if you happen to run OS kernel which does not support SSE2
+                extension on Intel P4 processor, then your application
+                might be exposed to "illegal instruction" exception.
+                There might be a way to enable support in kernel, e.g.
+                FreeBSD kernel can  be compiled with CPU_ENABLE_SSE, and
+                there is a way to disengage SSE2 code paths upon application
+                start-up, but if you aim for wider "audience" running
+                such kernel, consider no-sse2. Both the 386 and
+                no-asm options imply no-sse2.
 
   no-<cipher>   Build without the specified cipher (bf, cast, des, dh, dsa,
                 hmac, md2, md5, mdc2, rc2, rc4, rc5, rsa, sha).
@@ -101,7 +103,12 @@
   -Dxxx, -lxxx, -Lxxx, -fxxx, -mXXX, -Kxxx These system specific options will
                 be passed through to the compiler to allow you to
                 define preprocessor symbols, specify additional libraries,
-                library directories or other compiler options.
+                library directories or other compiler options. It might be
+                worth noting that some compilers generate code specifically
+                for processor the compiler currently executes on. This is
+                not necessarily what you might have in mind, since it might
+                be unsuitable for execution on other, typically older,
+                processor. Consult your compiler documentation.
 
   -DHAVE_CRYPTODEV Enable the BSD cryptodev engine even if we are not using
 		BSD. Useful if you are running ocf-linux or something


More information about the openssl-commits mailing list