[PATCH] D46266: [X86] Introduce X86SchedWriteWidths schedule wrapper for different vector widths.

Simon Pilgrim via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 30 07:48:37 PDT 2018


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

We need to split most of the scheduler classes by vector width to remove more of the InstRW overrides, this patch should make this easier/tidier by allowing us to pass the X86SchedWriteWidths wrapper to multi-width multiclasses and then split as required.

At the moment I've included fields for Scl (scalar - I wasn't sure if I should split this into SS/SD?), MMX (MMX integer), XMM, YMM and ZMM widths. These fields mostly share the same classes but it should give us the flexibility that we may need in the future.

This patch has replaced a set of example SSE/AVX512 instruction cases but isn't exhaustive as it gets very noisy.


Repository:
  rL LLVM

https://reviews.llvm.org/D46266

Files:
  lib/Target/X86/X86InstrAVX512.td
  lib/Target/X86/X86InstrSSE.td
  lib/Target/X86/X86Schedule.td

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D46266.144558.patch
Type: text/x-patch
Size: 27447 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180430/4b58a9d2/attachment.bin>


More information about the llvm-commits mailing list