[llvm-mca] Speed up the computation of the wait/ready/issued sets in the Scheduler.
authorAndrea Di Biagio <Andrea_DiBiagio@sn.scee.net>
Fri, 3 Aug 2018 12:55:28 +0000 (12:55 +0000)
committerAndrea Di Biagio <Andrea_DiBiagio@sn.scee.net>
Fri, 3 Aug 2018 12:55:28 +0000 (12:55 +0000)
commit1c3bcc6ce51bd4e6d9a344b22752df8f600ba969
tree722a35a8d6c3b4f8b7b85661c43b60c3f1b3bc2b
parent530484372b95406b12a12616857df8bc268f83c1
[llvm-mca] Speed up the computation of the wait/ready/issued sets in the Scheduler.

This patch is a follow-up to r338702.

We don't need to use a map to model the wait/ready/issued sets. It is much more
efficient to use a vector instead.

This patch gives us an average 7.5% speedup (on top of the ~12% speedup obtained
after r338702).

llvm-svn: 338883
llvm/docs/CommandGuide/llvm-mca.rst
llvm/tools/llvm-mca/ExecuteStage.cpp
llvm/tools/llvm-mca/Instruction.h
llvm/tools/llvm-mca/Scheduler.cpp
llvm/tools/llvm-mca/Scheduler.h