4 Commits

Author SHA1 Message Date
Matt Davis
f9dc097e14 [llvm-mca] Cleanup the header syntax line. Fix a comment. NFC.
This patch removes a few dashes from the header comment to make room for the syntax line.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@334986 91177308-0d34-0410-b5e6-96231b3b80d8
2018-06-18 21:38:38 +00:00
Andrea Di Biagio
47acfadfe7 [RFC][patch 3/3] Add support for variant scheduling classes in llvm-mca.
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 


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@333909 91177308-0d34-0410-b5e6-96231b3b80d8
2018-06-04 15:43:09 +00:00
Andrea Di Biagio
3529d77f3f [llvm-mca] Strip leading tabs and spaces from instruction strings before printing. NFC
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@332361 91177308-0d34-0410-b5e6-96231b3b80d8
2018-05-15 15:18:05 +00:00
Andrea Di Biagio
3b9d2408db [llvm-mca] Split the InstructionInfoView from the SummaryView.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@328358 91177308-0d34-0410-b5e6-96231b3b80d8
2018-03-23 19:40:04 +00:00