aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
diff options
context:
space:
mode:
authorMichael Jones <michaelrj@google.com>2021-11-01 10:32:19 -0700
committerMichael Jones <michaelrj@google.com>2021-11-09 10:12:18 -0800
commit8298424cae9b4d3d41dbe17857dc9cb247d90786 (patch)
tree60368fc43cc40b8c313eae8f2906fd6940bd8c7b /llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
parent5f1e509579e49e97c4ad7deb0dd3069393ccd461 (diff)
downloadllvm-8298424cae9b4d3d41dbe17857dc9cb247d90786.zip
llvm-8298424cae9b4d3d41dbe17857dc9cb247d90786.tar.gz
llvm-8298424cae9b4d3d41dbe17857dc9cb247d90786.tar.bz2
[libc] refactor atof string parsing
Split the code for parsing hexadecimal floating point numbers from the code for parsing the decimal floating point numbers so that the parsing can be faster for both of them. This decreases the time for the benchmark in release mode by about 15%, which noticeably beats GLibc. Old version: 2.299s New version: 1.893s GLibc: 2.133s Tests run by running the following command 10 times for each version: time ~/llvm-project/build/bin/libc_str_to_float_comparison_test ~/parse-number-fxx-test-data/data/* the parse-number-fxx-test-data-repository is here: https://github.com/nigeltao/parse-number-fxx-test-data/tree/fe94de252c691900982050c8e7c503d1efd1299a It's important to build llvm-libc in Release mode for accurate performance comparisons against glibc (set -DCMAKE_BUILD_TYPE=Release in your cmake). You also have to build the libc_str_to_float_comparison_test target. Reviewed By: lntue Differential Revision: https://reviews.llvm.org/D113036
Diffstat (limited to 'llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp')
0 files changed, 0 insertions, 0 deletions