hanchenye-llvm-project/libcxx/benchmarks
Aditya Kumar 38bc3df8a3 [locale] Avoid copy of __atoms when char_type is char
The function num_get<_CharT>::stage2_int_prep makes unnecessary copy of src
into atoms when char_type is char. This can be avoided by creating
a switch on type and just returning __src when char_type is char.

Added the test case to demonstrate performance improvement.
In order to avoid ABI incompatibilities, the changes are guarded
with a macro _LIBCPP_ABI_OPTIMIZED_LOCALE_NUM_GET

Differential Revision: https://reviews.llvm.org/D30268
Reviewed by: EricWF

llvm-svn: 305427
2017-06-14 23:17:45 +00:00
..
CMakeLists.txt Emit benchmark tests into the benchmarks build directory, not lib/ 2017-04-18 07:40:22 +00:00
ContainerBenchmarks.hpp remove warnings from google-benchmarks in libcxx 2016-10-14 00:07:57 +00:00
GenerateInput.hpp Add start of filesystem benchmarks 2016-10-30 22:53:00 +00:00
algorithms.bench.cpp Update in-tree Google Benchmark to current ToT. 2016-08-09 18:56:48 +00:00
filesystem.bench.cpp Optimize filesystem::path by providing weaker exception guarantees. 2016-10-31 02:46:25 +00:00
string.bench.cpp improve performance of string::find 2016-12-30 18:01:36 +00:00
stringstream.bench.cpp [locale] Avoid copy of __atoms when char_type is char 2017-06-14 23:17:45 +00:00
unordered_set_operations.bench.cpp Update in-tree Google Benchmark to current ToT. 2016-08-09 18:56:48 +00:00
util_smartptr.bench.cpp Adding smart_ptr benchmark 2016-08-01 19:56:39 +00:00
vector_operations.bench.cpp Start adding benchmarks for vector 2016-07-24 06:51:55 +00:00