summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-mca/InstructionInfoView.cpp
Commit message (Collapse)AuthorAgeFilesLines
* [llvm-mca] Move views and stats into a Views subdir. NFC.Matt Davis2018-08-241-91/+0
| | | | llvm-svn: 340645
* [llvm-mca] Use a different character to flag instructions with side-effects ↵Andrea Di Biagio2018-07-111-2/+2
| | | | | | | | | | | | | | | | | | | | | in the Instruction Info View. NFC This makes easier to identify changes in the instruction info flags. It also helps spotting potential regressions similar to the one recently introduced at r336728. Using the same character to mark MayLoad/MayStore/HasSideEffects is problematic for llvm-lit. When pattern matching substrings, llvm-lit consumes tabs and spaces. A change in position of the flag marker may not trigger a test failure. This patch only changes the character used for flag `hasSideEffects`. The reason why I didn't touch other flags is because I want to avoid spamming the mailing because of the massive diff due to the numerous tests affected by this change. In future, each instruction flag should be associated with a different character in the Instruction Info View. llvm-svn: 336797
* [llvm-mca] Cleanup the header syntax line. Fix a comment. NFC.Matt Davis2018-06-181-3/+2
| | | | | | This patch removes a few dashes from the header comment to make room for the syntax line. llvm-svn: 334986
* [RFC][patch 3/3] Add support for variant scheduling classes in llvm-mca.Andrea Di Biagio2018-06-041-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | This patch is the last of a sequence of three patches related to LLVM-dev RFC "MC support for variant scheduling classes". http://lists.llvm.org/pipermail/llvm-dev/2018-May/123181.html This fixes PR36672. The main goal of this patch is to teach llvm-mca how to solve variant scheduling classes. This patch does that, plus it adds new variant scheduling classes to the BtVer2 scheduling model to identify so-called zero-idioms (i.e. so-called dependency breaking instructions that are known to generate zero, and that are optimized out in hardware at register renaming stage). Without the BtVer2 change, this patch would not have had any meaningful tests. This patch is effectively the union of two changes: 1) a change that teaches llvm-mca how to resolve variant scheduling classes. 2) a change to the BtVer2 scheduling model that allows us to special-case packed XOR zero-idioms (this partially fixes PR36671). Differential Revision: https://reviews.llvm.org/D47374 llvm-svn: 333909
* [llvm-mca] Strip leading tabs and spaces from instruction strings before ↵Andrea Di Biagio2018-05-151-3/+13
| | | | | | printing. NFC llvm-svn: 332361
* [llvm-mca] Split the InstructionInfoView from the SummaryView.Andrea Di Biagio2018-03-231-0/+75
llvm-svn: 328358
OpenPOWER on IntegriCloud