[PATCH] D45629: [X86] Add FP logical scheduler class

Simon Pilgrim via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 13 10:14:51 PDT 2018


RKSimon created this revision.
RKSimon added reviewers: craig.topper, andreadb, spatel, zvi, courbet, pcordes.

Split the fp and integer vector logical instruction scheduler classes - older CPUs especially often handled these on different pipes.

This unearthed a couple of things that are also handled in this patch (I can split these off if people wish):

(1) we were tagging avx512 fp logic ops as WriteFAdd, probably because of the lack of WriteFLogic
(2) SandyBridge had integer logic ops only using Port5, when afaict they can use Ports015.
(3) Cleaned up x86 FCHS/FABS scheduling as they are typically treated as fp logic ops.


Repository:
  rL LLVM

https://reviews.llvm.org/D45629

Files:
  lib/Target/X86/X86InstrAVX512.td
  lib/Target/X86/X86InstrFPStack.td
  lib/Target/X86/X86InstrSSE.td
  lib/Target/X86/X86SchedBroadwell.td
  lib/Target/X86/X86SchedHaswell.td
  lib/Target/X86/X86SchedSandyBridge.td
  lib/Target/X86/X86SchedSkylakeClient.td
  lib/Target/X86/X86SchedSkylakeServer.td
  lib/Target/X86/X86Schedule.td
  lib/Target/X86/X86ScheduleAtom.td
  lib/Target/X86/X86ScheduleBtVer2.td
  lib/Target/X86/X86ScheduleSLM.td
  lib/Target/X86/X86ScheduleZnver1.td
  test/CodeGen/X86/avx2-schedule.ll
  test/CodeGen/X86/avx512-schedule.ll
  test/CodeGen/X86/avx512-shuffle-schedule.ll
  test/CodeGen/X86/mmx-schedule.ll
  test/CodeGen/X86/x87-schedule.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D45629.142432.patch
Type: text/x-patch
Size: 474641 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180413/b8e98fd2/attachment-0001.bin>


More information about the llvm-commits mailing list