[X86][Nearly NFC] Split SHLD/SHRD into their own WriteShiftDouble class
authorRoman Lebedev <lebedev.ri@gmail.com>
Sun, 8 Jul 2018 19:01:55 +0000 (19:01 +0000)
committerRoman Lebedev <lebedev.ri@gmail.com>
Sun, 8 Jul 2018 19:01:55 +0000 (19:01 +0000)
commit75ce45376b5925568d34a222d0014d29855cd450
treeafb8df53423ba06224208672c86efa3ef30efcb5
parent9e17073c218602cbd9e4345ab7c3674ff500b06d
[X86][Nearly NFC] Split SHLD/SHRD into their own WriteShiftDouble class

Summary:
{F6603964}
While there is still some discrepancies within that new group,
it is clearly separate from the other shifts.
And Agner's tables agree, these double shifts are clearly
different from the normal shifts/rotates.

I'm guessing `FeatureSlowSHLD` is related.

Indeed, a basic sched pair is *not* the /best/ match.
But keeping it in the WriteShift is /clearly/ not ideal either.
This can and likely will be fine-tuned later.

This is purely mechanical change, it does not change any numbers,
as the [lack of the change of] mca tests show.

Reviewers: craig.topper, RKSimon, andreadb

Reviewed By: craig.topper

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D49015

llvm-svn: 336515
llvm/lib/Target/X86/X86InstrShiftRotate.td
llvm/lib/Target/X86/X86SchedBroadwell.td
llvm/lib/Target/X86/X86SchedHaswell.td
llvm/lib/Target/X86/X86SchedSandyBridge.td
llvm/lib/Target/X86/X86SchedSkylakeClient.td
llvm/lib/Target/X86/X86SchedSkylakeServer.td
llvm/lib/Target/X86/X86Schedule.td
llvm/lib/Target/X86/X86ScheduleAtom.td
llvm/lib/Target/X86/X86ScheduleBtVer2.td
llvm/lib/Target/X86/X86ScheduleSLM.td
llvm/lib/Target/X86/X86ScheduleZnver1.td