[PeepholeOptimizer] Enable the advanced copy optimization by default.
authorQuentin Colombet <qcolombet@apple.com>
Thu, 21 Aug 2014 22:23:52 +0000 (22:23 +0000)
committerQuentin Colombet <qcolombet@apple.com>
Thu, 21 Aug 2014 22:23:52 +0000 (22:23 +0000)
The advanced copy optimization does not yield any difference on the whole llvm
test-suite + SPECs, either in compile time or runtime (binaries are identical),
but has a big potential when data go back and forth between register files as
demonstrated with test/CodeGen/ARM/adv-copy-opt.ll.

Note: This was measured for both Os and O3 for armv7s, arm64, and x86_64.

<rdar://problem/12702965>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@216236 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/PeepholeOptimizer.cpp

index 98fcc2e2529560a98534f944924d018acf97a363..d38502298cc50a2134e8dd4824038e63491a3b94 100644 (file)
@@ -94,7 +94,7 @@ DisablePeephole("disable-peephole", cl::Hidden, cl::init(false),
                 cl::desc("Disable the peephole optimizer"));
 
 static cl::opt<bool>
-DisableAdvCopyOpt("disable-adv-copy-opt", cl::Hidden, cl::init(true),
+DisableAdvCopyOpt("disable-adv-copy-opt", cl::Hidden, cl::init(false),
                   cl::desc("Disable advanced copy optimization"));
 
 STATISTIC(NumReuse,      "Number of extension results reused");