[PATCH] D8705: ScheduleDAGInstrs::buildSchedGraph() handling of memory dependecies rewritten.
Jonas Paulsson via llvm-commits
llvm-commits at lists.llvm.org
Sat Jan 30 05:16:10 PST 2016
jonpa updated this revision to Diff 46472.
jonpa added a comment.
Herald added a reviewer: tstellarAMD.
Patch updated by removing the handling for !AA, as suggested. To
me this is a welcome change - it was awkward to chain stores and
then handle them especially for the !AA case.
The following tests have been disabled temporarily. Someone
working with these backends, please take a look before I commit
the patch.
Failing Tests (4):
LLVM :: CodeGen/AMDGPU/split-vector-memoperand-offsets.ll
LLVM :: CodeGen/PowerPC/ppc64-fastcc.ll
LLVM :: CodeGen/PowerPC/vsx-fma-m.ll
LLVM :: CodeGen/PowerPC/vsx-fma-sp.ll
I tried the test-suite on my laptop and it seems to pass. I have
no idea what would be a preferred value for -dag-maps-huge-region
for various targets, but regarding compile time value is making a
difference, as seen below (X86).
Results (-dag-maps-huge-region = 1000)
--------------------------------------
IMPROVED : 218
REGRESSED : 294
PASS : 1480
Results (-dag-maps-huge-region = 50)
------------------------------------
IMPROVED : 290
REGRESSED : 208
PASS : 1494
Results (-dag-maps-huge-region = 20)
------------------------------------
IMPROVED : 282
REGRESSED : 209
PASS : 1501
I guess one would have to both measure compile time and run
benchmarks to find a good compromise value. Since (sub)targets
are divided in interest regarding performance / compile time, it
perhaps would make sense to let the subtarget define this value,
with the CodeModel in mind (consider JIT). But I guess this might
lie a bit in the future, after getting the patch in...
http://reviews.llvm.org/D8705
Files:
include/llvm/CodeGen/PseudoSourceValue.h
include/llvm/CodeGen/ScheduleDAG.h
include/llvm/CodeGen/ScheduleDAGInstrs.h
lib/CodeGen/ScheduleDAGInstrs.cpp
test/CodeGen/AArch64/arm64-misched-memdep-bug.ll
test/CodeGen/AArch64/tailcall_misched_graph.ll
test/CodeGen/AMDGPU/split-vector-memoperand-offsets.ll
test/CodeGen/PowerPC/ppc64-fastcc.ll
test/CodeGen/PowerPC/vsx-fma-m.ll
test/CodeGen/PowerPC/vsx-fma-sp.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D8705.46472.patch
Type: text/x-patch
Size: 43483 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160130/8e9c5f8d/attachment-0001.bin>
More information about the llvm-commits
mailing list