This is an archive of the discontinued LLVM Phabricator instance.

[X86][Sched] Update scheduling information for VZEROALL on HWS, BDW, SKX, SNB.
ClosedPublic

Authored by courbet on Sep 26 2018, 4:29 AM.

Details

Summary

While looking at PR35606, I found out that the scheduling info is incorrect in HSW/BDW/SKX.

One can check that it's really a P5+P6 and not a 2*P56 with:
echo -e 'vzeroall\nvandps %xmm1, %xmm2, %xmm3' | ./bin/llvm-exegesis -mode=uops -snippets-file=-
(vandps executes on P5 only)

Diff Detail

Event Timeline

courbet created this revision.Sep 26 2018, 4:29 AM
courbet updated this revision to Diff 167254.Sep 27 2018, 2:22 AM
  • [X86][Sched] Add scheduling information for VZEROALL on SNB.
  • [X86][Sched] Fix scheduling info for VZEROALL on SKX.
  • [X86][Sched] Fix scheduling information for VZEROALL on BDW.
courbet retitled this revision from [X86][Sched] Update scheduling information for VZEROALL on Haswell. to [X86][Sched] Update scheduling information for VZEROALL on HWS, BDW, SKX, SNB..Sep 27 2018, 2:23 AM
courbet edited the summary of this revision. (Show Details)

I think you'll need to regenerate the tests in both schedule-avx.ll and the llvm-mca resources-avx1.s files

courbet updated this revision to Diff 167676.Oct 1 2018, 1:12 AM

update tests

RKSimon accepted this revision.Oct 1 2018, 1:21 AM

LGTM - please submit the additions of the uops counters as a separate pre-commit

This revision is now accepted and ready to land.Oct 1 2018, 1:21 AM
courbet closed this revision.Oct 3 2018, 2:28 AM

This was submitted as rL343447.