summaryrefslogtreecommitdiff
path: root/src/BUILDING.md
diff options
context:
space:
mode:
authorDavid Benjamin <davidben@google.com>2016-08-11 13:26:41 -0400
committerDavid Benjamin <davidben@google.com>2016-09-12 13:10:03 -0400
commitf0c4a6c4bbde5229ceb86740703243fe5c436aad (patch)
treef55d7d9db657ca3a8a09c2ae5017a40ad92b15cb /src/BUILDING.md
parentc501d144b4305c228a0aaa8b3e291510e3b1235b (diff)
downloadboringssl-f0c4a6c4bbde5229ceb86740703243fe5c436aad.tar.gz
external/boringssl: Sync to 0e9138d2.
This includes the following changes: https://boringssl.googlesource.com/boringssl/+log/aa24851515d6280aa1d6a8b1548fe74691df3136..0e9138d295cd556e830dc8b3be735e808680f4bd This requires some build tweaks: - trusty's rules.mk builds with BORINGSSL_NO_CXX to suppress the new C++ scopers since they build their version of keymaster without the STL. - BORINGSSL_ENABLE_RC4_TLS to temporarily keep RC4 in the TLS stack. Change-Id: Ic688ec5779f649a4912b00fb2b55cba64fb07449
Diffstat (limited to 'src/BUILDING.md')
-rw-r--r--src/BUILDING.md12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/BUILDING.md b/src/BUILDING.md
index 5631ded8..522bee17 100644
--- a/src/BUILDING.md
+++ b/src/BUILDING.md
@@ -134,6 +134,18 @@ to enabling the corresponding ARM feature.
Note that if a feature is enabled in this way, but not actually supported at
run-time, BoringSSL will likely crash.
+## Assembling ARMv8 with Clang
+
+In order to support the ARMv8 crypto instructions, Clang requires that the
+architecture be `armv8-a+crypto`. However, setting that as a general build flag
+would allow the compiler to assume that crypto instructions are *always*
+supported, even without testing for them.
+
+It's possible to set the architecture in an assembly file using the `.arch`
+directive, but only very recent versions of Clang support this. If
+`BORINGSSL_CLANG_SUPPORTS_DOT_ARCH` is defined then `.arch` directives will be
+used with Clang, otherwise you may need to craft acceptable assembler flags.
+
# Running tests
There are two sets of tests: the C/C++ tests and the blackbox tests. For former