]> granicus.if.org Git - llvm/commit
[SystemZ] Improve decoding in case of instructions with four register operands.
authorJonas Paulsson <paulsson@linux.vnet.ibm.com>
Tue, 31 Jul 2018 13:00:42 +0000 (13:00 +0000)
committerJonas Paulsson <paulsson@linux.vnet.ibm.com>
Tue, 31 Jul 2018 13:00:42 +0000 (13:00 +0000)
commit6108c027cf87799474ef0e83c1706ddc32b10cf5
treea1c5c41fb0aeb9d320d208f5e572bbfdad535ea3
parent44442fbe1a22c80f37940e503320ffc5cf80b502
[SystemZ] Improve decoding in case of instructions with four register operands.

Since z13, the max group size will be 2 if any μop has more than 3 register
sources.

This has been ignored sofar in the SystemZHazardRecognizer, but is now
handled by recognizing those instructions and adjusting the tracking of
decoding and the cost heuristic for grouping.

Review: Ulrich Weigand
https://reviews.llvm.org/D49847

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@338368 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/SystemZ/SystemZHazardRecognizer.cpp
lib/Target/SystemZ/SystemZHazardRecognizer.h
lib/Target/SystemZ/SystemZMachineScheduler.cpp
test/CodeGen/SystemZ/vec-cmp-cmp-logic-select.ll