Reapply "[llvm-mca] Return the total number of cycles from method Pipeline::run()."
authorAndrea Di Biagio <Andrea_DiBiagio@sn.scee.net>
Wed, 28 Nov 2018 19:31:19 +0000 (19:31 +0000)
committerAndrea Di Biagio <Andrea_DiBiagio@sn.scee.net>
Wed, 28 Nov 2018 19:31:19 +0000 (19:31 +0000)
commitd10ed7c8d71d86841da1b204f0383037490c4242
tree97f12ac9a1d6c2a425d30cc0ca0175f1b03fc342
parentfaee83d1025fa8e030110f875101f9e7f7cee937
Reapply "[llvm-mca] Return the total number of cycles from method Pipeline::run()."

This reapplies r347767 (originally reviewed at: https://reviews.llvm.org/D55000)
with a fix for the missing std::move of the Error returned by the call to
Pipeline::runCycle().

Below is the original commit message from r347767.

If a user only cares about the overall latency, then the best/quickest way is to
change method Pipeline::run() so that it returns the total number of cycles to
the caller.

When the simulation pipeline is run, the number of cycles (or an error) is
returned from method Pipeline::run().
The advantage is that no hardware event listener is needed for computing that
latency. So, the whole process should be faster (and simpler - at least for that
particular use case).

llvm-svn: 347795
llvm/tools/llvm-mca/include/Pipeline.h
llvm/tools/llvm-mca/lib/Pipeline.cpp
llvm/tools/llvm-mca/llvm-mca.cpp