aboutsummaryrefslogtreecommitdiff
path: root/BUILDING.md
diff options
context:
space:
mode:
authorDavid Benjamin <davidben@google.com>2017-08-08 17:21:28 -0400
committerDavid Benjamin <davidben@google.com>2017-08-14 19:16:25 +0000
commit488ca0eacefd3bc8c7570e8ed5053f4a49451419 (patch)
treebff9a5f033aad93665c63aada58dec379bcfd30c /BUILDING.md
parente1bfd16dd712b0fba132cbca2f7d383e6edb0f65 (diff)
downloadboringssl-488ca0eacefd3bc8c7570e8ed5053f4a49451419.zip
boringssl-488ca0eacefd3bc8c7570e8ed5053f4a49451419.tar.gz
boringssl-488ca0eacefd3bc8c7570e8ed5053f4a49451419.tar.bz2
Enable ADX in x86_64-mont*.pl.
This is a reland of https://boringssl-review.googlesource.com/18965 which was reverted due to Windows toolchain problems that have since been fixed. We have an SDE bot now and can more easily test things. We also enabled ADX in rsaz-avx2.pl which does not work without x86_64-mont*.pl enabled. rsa-avx2.pl's ADX code only turns itself off so that the faster ADX code can be used... but we disable it. Verified, after reverting the fix, the test vectors we imported combined with Intel SDE catches CVE-2016-7055, so we do indeed have test coverage. Also verified on the Windows version of Intel SDE. Thanks to Alexey Ivanov for pointing out the discrepancy. Skylake numbers: Before: Did 7296 RSA 2048 signing operations in 10038191us (726.8 ops/sec) Did 209000 RSA 2048 verify operations in 10030629us (20836.2 ops/sec) Did 1080 RSA 4096 signing operations in 10072221us (107.2 ops/sec) Did 60836 RSA 4096 verify operations in 10053929us (6051.0 ops/sec) ADX consistently off: Did 9360 RSA 2048 signing operations in 10025823us (933.6 ops/sec) Did 220000 RSA 2048 verify operations in 10024339us (21946.6 ops/sec) Did 1048 RSA 4096 signing operations in 10006782us (104.7 ops/sec) Did 61936 RSA 4096 verify operations in 10088011us (6139.6 ops/sec) After (ADX consistently on): Did 10444 RSA 2048 signing operations in 10006781us (1043.7 ops/sec) Did 323000 RSA 2048 verify operations in 10012192us (32260.7 ops/sec) Did 1610 RSA 4096 signing operations in 10044930us (160.3 ops/sec) Did 96000 RSA 4096 verify operations in 10075606us (9528.0 ops/sec) Change-Id: I2502ce80e9cfcdea40907512682e3a6663000faa Reviewed-on: https://boringssl-review.googlesource.com/19105 Reviewed-by: Adam Langley <agl@google.com> Commit-Queue: David Benjamin <davidben@google.com>
Diffstat (limited to 'BUILDING.md')
-rw-r--r--BUILDING.md5
1 files changed, 3 insertions, 2 deletions
diff --git a/BUILDING.md b/BUILDING.md
index 6dfeddb..d5d3fa0 100644
--- a/BUILDING.md
+++ b/BUILDING.md
@@ -32,8 +32,9 @@
* [Go](https://golang.org/dl/) is required. If not found by CMake, the go
executable may be configured explicitly by setting `GO_EXECUTABLE`.
- * To build the x86 and x86\_64 assembly, your assembler must support AVX2
- instructions and MOVBE. If using GNU binutils, you must have 2.22 or later.
+ * To build the x86 and x86\_64 assembly, your assembler must support AVX2,
+ MOVBE, and ADX. If using GNU binutils, you must have 2.23 or later. If using
+ Yasm, you must have 1.3.0 or later.
## Building