[PATCH] D47723: [CodeGen] print max throughput for 0-latency insts

Sanjay Patel via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jun 4 13:45:32 PDT 2018


spatel updated this revision to Diff 149845.
spatel edited the summary of this revision.
spatel added a comment.

Patch updated:
Please have a close look at the diffs because I'm not sure how to test all of these paths.

The cases that I see behaving as intended via tests are the recent variant scheduled "xorps %xmm0, %xmm0" and existing non-zero latency cases like:
; ZNVER1-SSE-NEXT:    ldmxcsr -{{[0-9]+}}(%rsp) # sched: [100:?]
(those cases are all unchanged, as I think is expected for this patch...but let me know if we want to treat that differently)

The big logical difference in this patch is that instead of using an Optional, we rely on FP NaN to represent the unknown state. Then, we modify the throughput calcs to account for the cases where no execution resources are specified by using default/max issue widths.


https://reviews.llvm.org/D47723

Files:
  include/llvm/CodeGen/TargetSchedule.h
  include/llvm/MC/MCSchedule.h
  lib/CodeGen/TargetSchedule.cpp
  lib/CodeGen/TargetSubtargetInfo.cpp
  lib/MC/MCSchedule.cpp
  test/CodeGen/X86/sse-schedule.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D47723.149845.patch
Type: text/x-patch
Size: 8379 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180604/bec561fb/attachment.bin>


More information about the llvm-commits mailing list