aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBob Wilson <bob.wilson@apple.com>2009-11-25 19:57:14 +0000
committerBob Wilson <bob.wilson@apple.com>2009-11-25 19:57:14 +0000
commitaea35a5ebae86ac620ec0ebfe5ee152b46c343f2 (patch)
treebd7f0615260d17a489a87cab3526da65f19cf53e
parent62b818848c2415d32c82957322cba81948b7f409 (diff)
downloadexternal_llvm-aea35a5ebae86ac620ec0ebfe5ee152b46c343f2.tar.gz
external_llvm-aea35a5ebae86ac620ec0ebfe5ee152b46c343f2.tar.bz2
external_llvm-aea35a5ebae86ac620ec0ebfe5ee152b46c343f2.zip
Tail duplicate indirect branches for PowerPC, too.
With the testcase for pr3120, the "threaded interpreter" runtime decreases from 1788 to 1413 with this change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89877 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Target/PowerPC/PPCInstrInfo.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/Target/PowerPC/PPCInstrInfo.h b/lib/Target/PowerPC/PPCInstrInfo.h
index bb0dc15a79..ab341bd779 100644
--- a/lib/Target/PowerPC/PPCInstrInfo.h
+++ b/lib/Target/PowerPC/PPCInstrInfo.h
@@ -151,6 +151,8 @@ public:
/// instruction may be. This returns the maximum number of bytes.
///
virtual unsigned GetInstSizeInBytes(const MachineInstr *MI) const;
+
+ virtual bool isProfitableToDuplicateIndirectBranch() const { return true; }
};
}