)]}' { "commit": "5f922a14fe3d183e2d2dc58d0aa34c4627464da8", "tree": "5d2aa8be43316fee121f07773cb9774072273540", "parents": [ "80baf3ae24040530964d3671ad7ac8229b6938e7" ], "author": { "name": "Michael Jones", "email": "michaelrj@google.com", "time": "Mon Nov 01 10:32:19 2021 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Nov 09 10:15:12 2021 -0800" }, "message": "[libc] refactor atof string parsing\n\nSplit the code for parsing hexadecimal floating point numbers from the\ncode for parsing the decimal floating point numbers so that the parsing\ncan be faster for both of them.\n\nThis decreases the time for the benchmark in release mode by about 15%,\nwhich noticeably beats GLibc.\n\nOld version: 2.299s\nNew version: 1.893s\nGLibc: 2.133s\n\nTests run by running the following command 10 times for each version:\ntime ~/llvm-project/build/bin/libc_str_to_float_comparison_test ~/parse-number-fxx-test-data/data/*\n\nthe parse-number-fxx-test-data-repository is here:\nhttps://github.com/nigeltao/parse-number-fxx-test-data/tree/fe94de252c691900982050c8e7c503d1efd1299a\n\nIt\u0027s important to build llvm-libc in Release mode for accurate\nperformance comparisons against glibc (set -DCMAKE_BUILD_TYPE\u003dRelease in\nyour cmake).\nYou also have to build the libc_str_to_float_comparison_test target.\n\nReviewed By: lntue\n\nDifferential Revision: https://reviews.llvm.org/D113036\n\nGitOrigin-RevId: 8298424cae9b4d3d41dbe17857dc9cb247d90786\n", "tree_diff": [ { "type": "modify", "old_id": "59bd1ec8e5da4616538da532e3331de19278cb5f", "old_mode": 33188, "old_path": "src/__support/str_to_float.h", "new_id": "90408e77b557dee8303b1171cf6fc724d2f61d5b", "new_mode": 33188, "new_path": "src/__support/str_to_float.h" }, { "type": "modify", "old_id": "f20cc0dfff5be57038edea655740a4d7ec64bf93", "old_mode": 33188, "old_path": "test/src/stdlib/strtof_test.cpp", "new_id": "2109e7d19df69eae0d44c222b0a7263cece8523e", "new_mode": 33188, "new_path": "test/src/stdlib/strtof_test.cpp" } ] }