aboutsummaryrefslogtreecommitdiff
path: root/flang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorserge-sans-paille <sguelton@redhat.com>2021-04-01 22:18:55 +0200
committerserge-sans-paille <sguelton@redhat.com>2021-04-07 14:04:32 +0200
commit6951b72334bbe4c189c71751edc1e361d7b5632c (patch)
tree4769880a7a705156bf37adeb096644666e4814d1 /flang/lib/Frontend/CompilerInvocation.cpp
parentf0e102c1a39f0f7e9e309b27916533b8fefd9be7 (diff)
downloadllvm-6951b72334bbe4c189c71751edc1e361d7b5632c.zip
llvm-6951b72334bbe4c189c71751edc1e361d7b5632c.tar.gz
llvm-6951b72334bbe4c189c71751edc1e361d7b5632c.tar.bz2
[clang] Speedup line offset mapping computation
Clang spends a decent amount of time in the LineOffsetMapping::get(...) function. This function used to be vectorized (through SSE2) then the optimization got dropped because the sequential version was on-par performance wise. This provides an optimization of the sequential version that works on a word at a time, using (documented) bithacks to provide a portable vectorization. When preprocessing the sqlite amalgamation, this yields a sweet 3% speedup. Differential Revision: https://reviews.llvm.org/D99409
Diffstat (limited to 'flang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions