[PATCH] D56777: [X86][BtVer2] Update latency of horizontal operations.

Andrea Di Biagio via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 16 03:53:21 PST 2019


andreadb created this revision.
andreadb added reviewers: RKSimon, spatel, craig.topper.
Herald added a subscriber: gbedwell.

On Jaguar, horizontal adds/subs have local forwarding disable.
That means, we pay a compulsory extra cycle of write-back stage, and the value is not available until the end of that stage.

This patch changes the latency of horizontal operations by adding an extra cycle. With this patch, latency numbers now match what is reported by perf.

I plan to send another patch to also 'fix' the latency of shuffle operations (on Jaguar, local forwarding is disabled for vector shuffles too).


https://reviews.llvm.org/D56777

Files:
  lib/Target/X86/X86ScheduleBtVer2.td
  test/CodeGen/X86/avx-schedule.ll
  test/CodeGen/X86/mmx-schedule.ll
  test/CodeGen/X86/sse3-schedule.ll
  test/CodeGen/X86/ssse3-schedule.ll
  test/tools/llvm-mca/X86/BtVer2/dot-product.s
  test/tools/llvm-mca/X86/BtVer2/hadd-read-after-ld-1.s
  test/tools/llvm-mca/X86/BtVer2/hadd-read-after-ld-2.s
  test/tools/llvm-mca/X86/BtVer2/instruction-info-view.s
  test/tools/llvm-mca/X86/BtVer2/resources-avx1.s
  test/tools/llvm-mca/X86/BtVer2/resources-sse3.s
  test/tools/llvm-mca/X86/BtVer2/resources-ssse3.s

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D56777.182006.patch
Type: text/x-patch
Size: 34098 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190116/78bd1ffe/attachment.bin>


More information about the llvm-commits mailing list