R600: Set scheduling preference to Sched::Source
authorTom Stellard <thomas.stellard@amd.com>
Mon, 12 Aug 2013 22:33:21 +0000 (22:33 +0000)
committerTom Stellard <thomas.stellard@amd.com>
Mon, 12 Aug 2013 22:33:21 +0000 (22:33 +0000)
commitf15dfe4eb48e8e2ff02a30bc8ba9112108f9b83d
treedae7bd00a5eb2826a89e3765ec7a9659cc7e9cd9
parent93a013c760631e696e6ae3042551c16d4636ade6
R600: Set scheduling preference to Sched::Source

R600 doesn't need to do any scheduling on the SelectionDAG now that it
has a very good MachineScheduler.  Also, using the VLIW SelectionDAG
scheduler was having a major impact on compile times. For example with
the phatk kernel here are the LLVM IR to machine code compile times:

With Sched::VLIW

Total Compile Time:                  1.4890 Seconds (User + System)
SelectionDAG Instruction Scheduling: 1.1670 Seconds (User + System)

With Sched::Source

Total Compile Time:                  0.3330 Seconds (User + System)
SelectionDAG Instruction Scheduling: 0.0070 Seconds (User + System)

The code ouput was identical with both schedulers.  This may not be true
for all programs, but it gives me confidence that there won't be much
reduction, if any, in code quality by using Sched::Source.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188215 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/R600/R600ISelLowering.cpp
test/CodeGen/R600/and.ll
test/CodeGen/R600/fadd.ll
test/CodeGen/R600/fmul.ll
test/CodeGen/R600/fmul.v4f32.ll
test/CodeGen/R600/fsub.ll
test/CodeGen/R600/kcache-fold.ll
test/CodeGen/R600/setcc.ll
test/CodeGen/R600/sub.ll