Go to file
Zachary Turner 95c625ecc9 Make BinaryStreamReader::readCString a bit faster.
Previously it would do a character by character search for a null
terminator, to account for the fact that an arbitrary stream need not
store its data contiguously so you couldn't just do a memchr. However, the
stream API has a function which will return the longest contiguous chunk
without doing a copy, and by using this function we can do a memchr on the
individual chunks. For certain types of streams like data from object
files etc, this is guaranteed to find the null terminator with only a
single memchr, but even with discontiguous streams such as
MappedBlockStream, it's rare that any given string will cross a block
boundary, so even those will almost always be satisfied with a single
memchr.

This optimization is worth a 10-12% reduction in link time (4.2 seconds ->
3.75 seconds)

Differential Revision: https://reviews.llvm.org/D33503

llvm-svn: 303918
2017-05-25 21:12:27 +00:00
clang Update the getting started documentation to match the corresponding LLVM commit in r303912. 2017-05-25 21:02:49 +00:00
clang-tools-extra Earlier revert introduced an extra space, remove it. 2017-05-25 20:29:17 +00:00
compiler-rt [asan] relax sanbox_read_proc_self_maps_test to pass even if unshare() fails. 2017-05-25 20:50:36 +00:00
debuginfo-tests Add a test for PR33166. 2017-05-25 19:33:16 +00:00
libclc math: Implement sinh function 2017-02-25 02:46:53 +00:00
libcxx Update more coroutine_handle signatures to reflect N4663. 2017-05-25 19:04:55 +00:00
libcxxabi [Demangler] Remove a failing assert introduced in r303718 2017-05-24 20:53:13 +00:00
libunwind [libunwind] Fix executable stack directive on Linux. 2017-05-16 20:18:57 +00:00
lld Accept not only --reproduce <foo> but also --reproduce=<foo>. 2017-05-25 19:49:54 +00:00
lldb Fix bug #28898 2017-05-25 20:12:30 +00:00
llgo benchcomp: Add a mode for analyzing file sizes. 2017-04-03 19:13:12 +00:00
llvm Make BinaryStreamReader::readCString a bit faster. 2017-05-25 21:12:27 +00:00
openmp Fix for KMP_AFFINITY=respect with multiple processor groups 2017-05-15 19:05:59 +00:00
parallel-libs
polly Drop newline in docs builder to see if Polly docs are updated 2017-05-25 05:38:05 +00:00