From 16f30bd6bd1f659e0e25d0ec289a00278f6a4bef Mon Sep 17 00:00:00 2001
From: Denis Denisov <denji@users.noreply.github.com>
Date: Sat, 18 Feb 2017 18:30:47 +0200
Subject: [PATCH] BoringSSL/AVX2 to work on modern CPU (#123)

---
 boring-nginx/Dockerfile | 2 ++
 boring-nginx/README.md  | 2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/boring-nginx/Dockerfile b/boring-nginx/Dockerfile
index 69e1b87..0bc641c 100644
--- a/boring-nginx/Dockerfile
+++ b/boring-nginx/Dockerfile
@@ -41,6 +41,8 @@ RUN echo "@commuedge https://nl.alpinelinux.org/alpine/edge/community" >> /etc/a
  && git clone https://boringssl.googlesource.com/boringssl --depth=1 \
  && cd /tmp/ngx_brotli && git submodule update --init \
  && cd /tmp/boringssl \
+ && sed -n 's/\$avx = 0/\$avx = 2/p' crypto/*/asm/*.pl
+ && sed -n 's/\$addx = 0/\$addx = 1/p' crypto/*/asm/*.pl
  && mkdir build && cd build && cmake -DCMAKE_BUILD_TYPE=Release .. \
  && make -j ${NB_CORES} && cd .. \
  && mkdir -p .openssl/lib/ && cd .openssl && ln -s ../include && cd .. \
diff --git a/boring-nginx/README.md b/boring-nginx/README.md
index 5b3cc67..0582568 100644
--- a/boring-nginx/README.md
+++ b/boring-nginx/README.md
@@ -7,7 +7,7 @@ This is nginx statically linked against BoringSSL, with embedded Brotli support.
 
 #### Features
 - Based on Alpine Linux.
-- nginx built against **BoringSSL**.
+- nginx built against **BoringSSL** with AVX2 instructions.
 - Built using hardening gcc flags.
 - TTP/2 (+NPN) support.
 - Brotli compression support (and configured).