Simon Pilgrim
851134e497
[llvm-exegesis] Early out if the scheduler models have no extra info.
...
We were calling getExtraProcessorInfo() without checking hasExtraProcessorInfo(), resulting in an assertion.
llvm-svn: 330263
2018-04-18 14:46:54 +00:00
Simon Pilgrim
48396f05b6
[llvm-exegesis] Use LLVMTargetMachine pointer everywhere. NFCI.
...
Avoid calling the unique_ptr multiple times.
llvm-svn: 330260
2018-04-18 14:22:33 +00:00
Simon Pilgrim
ffb897ed4a
[llvm-exegesis] Put a newline at the end of each error report.
...
Makes multiple error messages much easier to read.
llvm-svn: 330258
2018-04-18 13:58:41 +00:00
Simon Pilgrim
6133119928
[llvm-exegesis] Pull out LLVMTargetMachine to simplify debugging. NFCI.
...
Has been useful while trying to get around all the error reporting issues mentioned on PR37049.
llvm-svn: 330255
2018-04-18 13:39:03 +00:00
Clement Courbet
6c63e70e7b
[llvm-exegesis] Fix use after free.
...
Reviewers: gchatelet
Subscribers: tschuett, llvm-commits
Differential Revision: https://reviews.llvm.org/D45625
llvm-svn: 330026
2018-04-13 14:46:48 +00:00
Clement Courbet
84516bef77
[llvm-exegesis] Add a flag to disable libpfm even if present.
...
Summary: Fixes PR37053.
Reviewers: uabelho, gchatelet
Subscribers: mgorny, tschuett, llvm-commits
Differential Revision: https://reviews.llvm.org/D45436
llvm-svn: 329781
2018-04-11 07:32:43 +00:00
Clement Courbet
221e6ccd99
[MC][TableGen] Add optional libpfm counter names for ProcResUnits.
...
Summary:
Subtargets can define the libpfm counter names that can be used to
measure cycles and uops issued on ProcResUnits.
This allows making llvm-exegesis available on more targets.
Fixes PR36984.
Reviewers: gchatelet, RKSimon, andreadb, craig.topper
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D45360
llvm-svn: 329675
2018-04-10 08:16:37 +00:00
Simon Pilgrim
787f0b993b
[llvm-exegesis] Fix unused return value warning and add a useful error message for event counter reads.
...
llvm-svn: 329496
2018-04-07 11:37:21 +00:00
Clement Courbet
af30cac9f9
[llvm-exegesis] Suppress a warning.
...
llvm-svn: 329257
2018-04-05 05:57:23 +00:00
Clement Courbet
926e5d639e
[llvm-exegesis] Add missing link libraries.
...
llvm-svn: 329185
2018-04-04 12:58:41 +00:00
Clement Courbet
961c076aed
[llvm-exegesis] Do not initialize FileDescriptor when libpfm is not
...
available.
llvm-svn: 329177
2018-04-04 12:12:38 +00:00
Clement Courbet
529cdf45b4
[llvm-exegesis] Fix compilation on lld-x86_64-darwin13
...
YAMLTraits does not know how to serialize `size_t` portably. Use `int`
instead.
llvm-svn: 329176
2018-04-04 12:01:46 +00:00
Clement Courbet
b1515f942f
[llvm-exegesis][NFC] Fix compilation warning.
...
llvm-svn: 329175
2018-04-04 12:01:43 +00:00
Clement Courbet
b4fbdc1e33
[llvm-exegesis][NFC] Fix a few warnings.
...
llvm-svn: 329174
2018-04-04 12:01:38 +00:00
Clement Courbet
fac61870af
[llvm-exegesis] Fix compilation on some clang versions.
...
default initialization of an object of const type 'const llvm::DebugLoc' requires a user-provided default constructor.
llvm-svn: 329171
2018-04-04 11:45:53 +00:00
Clement Courbet
c7b418ae52
Re-land r329156 "Add llvm-exegesis tool."
...
Fixed to depend on and initialize the native target instead of X86.
llvm-svn: 329169
2018-04-04 11:37:06 +00:00
Clement Courbet
606b211cef
Revert r329156 "Add llvm-exegesis tool."
...
Breaks a bunch of bots.
llvm-svn: 329157
2018-04-04 08:22:54 +00:00
Clement Courbet
0f5c40aa77
Add llvm-exegesis tool.
...
Summary:
[llvm-exegesis][RFC] Automatic Measurement of Instruction Latency/Uops
This is the code corresponding to the RFC "llvm-exegesis Automatic Measurement of Instruction Latency/Uops".
The RFC is available on the LLVM mailing lists as well as the following document
for easier reading:
https://docs.google.com/document/d/1QidaJMJUyQdRrFKD66vE1_N55whe0coQ3h1GpFzz27M/edit?usp=sharing
Subscribers: mgorny, gchatelet, orwant, llvm-commits
Differential Revision: https://reviews.llvm.org/D44519
llvm-svn: 329156
2018-04-04 08:13:32 +00:00