[X86][Haswell]: Updating the scheduling information for the Haswell subtarget.
authorGadi Haber <gadi.haber@intel.com>
Fri, 8 Dec 2017 09:48:44 +0000 (09:48 +0000)
committerGadi Haber <gadi.haber@intel.com>
Fri, 8 Dec 2017 09:48:44 +0000 (09:48 +0000)
commit2cf601f28f158cdce3c7640186e46a65bf308fc0
tree89247772dc39caf970e3be5da7d93b8c2d6bfff8
parent76b36d3a7f4237e2b923c532e9c350202a0c78b4
[X86][Haswell]: Updating the scheduling information for the Haswell subtarget.

Updated the scheduling information for the Haswell subtarget with the following changes:

Regrouped the instructions after adding appropriate load + store latencies.
Added scheduling for missing instructions such as the GATHER instrs.
The changes were made after revisiting the latencies impact of all memory uOps.

Reviewers: RKSimon, zvi, craig.topper, apilipenko
Differential Revision: https://reviews.llvm.org/D40021

Change-Id: Iaf6c1f5169add1552845a8a566af4e5a359217a7
llvm-svn: 320137
29 files changed:
llvm/lib/Target/X86/X86SchedHaswell.td
llvm/test/CodeGen/X86/aes-schedule.ll
llvm/test/CodeGen/X86/avx-schedule.ll
llvm/test/CodeGen/X86/avx2-schedule.ll
llvm/test/CodeGen/X86/avx512-bugfix-23634.ll
llvm/test/CodeGen/X86/bmi-schedule.ll
llvm/test/CodeGen/X86/bmi2-schedule.ll
llvm/test/CodeGen/X86/f16c-schedule.ll
llvm/test/CodeGen/X86/fma-schedule.ll
llvm/test/CodeGen/X86/lea32-schedule.ll
llvm/test/CodeGen/X86/lea64-schedule.ll
llvm/test/CodeGen/X86/lzcnt-schedule.ll
llvm/test/CodeGen/X86/mmx-schedule.ll
llvm/test/CodeGen/X86/movbe-schedule.ll
llvm/test/CodeGen/X86/mul-constant-i32.ll
llvm/test/CodeGen/X86/mul-constant-i64.ll
llvm/test/CodeGen/X86/popcnt-schedule.ll
llvm/test/CodeGen/X86/rdrand-schedule.ll
llvm/test/CodeGen/X86/recip-fastmath.ll
llvm/test/CodeGen/X86/recip-fastmath2.ll
llvm/test/CodeGen/X86/schedule-x86_32.ll
llvm/test/CodeGen/X86/schedule-x86_64.ll
llvm/test/CodeGen/X86/sse-schedule.ll
llvm/test/CodeGen/X86/sse2-schedule.ll
llvm/test/CodeGen/X86/sse3-schedule.ll
llvm/test/CodeGen/X86/sse41-schedule.ll
llvm/test/CodeGen/X86/sse42-schedule.ll
llvm/test/CodeGen/X86/ssse3-schedule.ll
llvm/test/CodeGen/X86/x87-schedule.ll