1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 18:54:02 +01:00
llvm-mirror/tools/llvm-exegesis/lib
Simon Pilgrim 165132af1b [ADT] Remove APInt/APSInt toString() std::string variants
<string> is currently the highest impact header in a clang+llvm build:

https://commondatastorage.googleapis.com/chromium-browser-clang/llvm-include-analysis.html

One of the most common places this is being included is the APInt.h header, which needs it for an old toString() implementation that returns std::string - an inefficient method compared to the SmallString versions that it actually wraps.

This patch replaces these APInt/APSInt methods with a pair of llvm::toString() helpers inside StringExtras.h, adjusts users accordingly and removes the <string> from APInt.h - I was hoping that more of these users could be converted to use the SmallString methods, but it appears that most end up creating a std::string anyhow. I avoided trying to use the raw_ostream << operators as well as I didn't want to lose having the integer radix explicit in the code.

Differential Revision: https://reviews.llvm.org/D103888
2021-06-11 13:19:15 +01:00
..
AArch64 Renovate CMake files in the llvm-exegesis tool. 2021-02-10 14:22:55 -05:00
Mips Renovate CMake files in the llvm-exegesis tool. 2021-02-10 14:22:55 -05:00
PowerPC Renovate CMake files in the llvm-exegesis tool. 2021-02-10 14:22:55 -05:00
X86 [llvm-exegesis] Don't erroneously refuse to measure POPCNT instruction 2021-04-04 14:38:26 +03:00
Analysis.cpp [MC] Refactor MCObjectFileInfo initialization and allow targets to create MCObjectFileInfo 2021-05-23 14:15:23 -07:00
Analysis.h [MC] Refactor MCObjectFileInfo initialization and allow targets to create MCObjectFileInfo 2021-05-23 14:15:23 -07:00
Assembler.cpp [GlobalISel] Base implementation for sret demotion. 2021-01-06 10:30:50 +05:30
Assembler.h Recommit: "[llvm-exegesis] Improve error reporting in Assembler.cpp" 2020-02-19 14:40:28 +01:00
BenchmarkCode.h [llvm-exegesis] Finish plumbing the Config field. 2019-10-08 09:06:48 +00:00
BenchmarkResult.cpp [ADT] Remove APInt/APSInt toString() std::string variants 2021-06-11 13:19:15 +01:00
BenchmarkResult.h [llvm-exegesis] Loop unrolling for loop snippet repetitor mode 2021-05-25 12:08:27 +03:00
BenchmarkRunner.cpp [llvm-exegesis] Loop unrolling for loop snippet repetitor mode 2021-05-25 12:08:27 +03:00
BenchmarkRunner.h [llvm-exegesis] Loop unrolling for loop snippet repetitor mode 2021-05-25 12:08:27 +03:00
Clustering.cpp Avoid including FileSystem.h from MemoryBuffer.h 2020-02-29 12:30:23 -08:00
Clustering.h
CMakeLists.txt Renovate CMake files in the llvm-exegesis tool. 2021-02-10 14:22:55 -05:00
CodeTemplate.cpp [llvm-exegesis][NFC] internal changes 2019-12-18 17:24:07 +01:00
CodeTemplate.h [llvm-exegesis] Exploring X86::OperandType::OPERAND_COND_CODE 2020-02-12 21:33:52 +03:00
Error.cpp [llvm-exegesis] Improve error reporting in BenchmarkRunner.cpp 2020-02-07 16:29:52 +01:00
Error.h [llvm-exegesis] Improve error reporting in BenchmarkRunner.cpp 2020-02-07 16:29:52 +01:00
LatencyBenchmarkRunner.cpp [llvm-exegesis] Let Counter returns up to 16 entries 2020-06-26 10:57:20 -04:00
LatencyBenchmarkRunner.h [llvm-exegesis] Let Counter returns up to 16 entries 2020-06-26 10:57:20 -04:00
LlvmState.cpp [MC] Refactor MCObjectFileInfo initialization and allow targets to create MCObjectFileInfo 2021-05-23 14:15:23 -07:00
LlvmState.h
MCInstrDescView.cpp [WebAssembly] Support single-floating-point immediate value 2021-02-04 18:05:06 -08:00
MCInstrDescView.h
ParallelSnippetGenerator.cpp [llvm-exegesis] Exploring X86::OperandType::OPERAND_COND_CODE 2020-02-12 21:33:52 +03:00
ParallelSnippetGenerator.h [llvm-exegesis] Exploring X86::OperandType::OPERAND_COND_CODE 2020-02-12 21:33:52 +03:00
PerfHelper.cpp Reland [llvm-exegesis] Add benchmark latency option on X86 that uses LBR for more precise measurements. 2020-07-27 12:38:05 -04:00
PerfHelper.h Reland [llvm-exegesis] Add benchmark latency option on X86 that uses LBR for more precise measurements. 2020-07-27 12:38:05 -04:00
RegisterAliasing.cpp [llvm-exegesis] Allow the randomizer to fail nicely... 2020-01-23 11:08:44 +01:00
RegisterAliasing.h [llvm-exegesis] Allow the randomizer to fail nicely... 2020-01-23 11:08:44 +01:00
RegisterValue.cpp
RegisterValue.h [llvm-exegesis][NFC] Remove extra llvm:: qualifications. 2019-10-09 11:58:42 +00:00
SchedClassResolution.cpp [llvm] Use llvm::find_if (NFC) 2021-01-11 18:48:06 -08:00
SchedClassResolution.h [llvm-exegesis][NFC] Remove extra llvm:: qualifications. 2019-10-09 11:58:42 +00:00
SerialSnippetGenerator.cpp Avoid shuffle self-assignment in EXPENSIVE_CHECKS builds 2021-03-10 11:17:34 +00:00
SerialSnippetGenerator.h [llvm-exegesis] Exploring X86::OperandType::OPERAND_COND_CODE 2020-02-12 21:33:52 +03:00
SnippetFile.cpp [MC] Refactor MCObjectFileInfo initialization and allow targets to create MCObjectFileInfo 2021-05-23 14:15:23 -07:00
SnippetFile.h
SnippetGenerator.cpp [llvm-exegesis] Exploring X86::OperandType::OPERAND_COND_CODE 2020-02-12 21:33:52 +03:00
SnippetGenerator.h Don't stash types that aren't copyable or moveable into a SmallVector 2020-05-02 19:13:06 +02:00
SnippetRepetitor.cpp [llvm-exegesis] Loop unrolling for loop snippet repetitor mode 2021-05-25 12:08:27 +03:00
SnippetRepetitor.h [llvm-exegesis] Loop unrolling for loop snippet repetitor mode 2021-05-25 12:08:27 +03:00
Target.cpp [llvm] Use *::empty (NFC) 2021-01-16 09:40:55 -08:00
Target.h Re-land "[llvm-exegesis] Save target state before running the benchmark." 2020-11-04 09:46:55 +01:00
TargetSelect.h [llvm-exegesis] Move native target initialization code to a separate file. 2019-05-22 13:50:16 +00:00
UopsBenchmarkRunner.cpp Revert "Remove redundant "std::move"s in return statements" 2020-02-10 07:07:40 -08:00
UopsBenchmarkRunner.h [llvm-exegesis][NFC] Disassociate snippet generators from benchmark runners 2020-01-20 16:19:13 +01:00