diff options
author | Bob Wilson <bob.wilson@apple.com> | 2009-11-18 03:34:27 +0000 |
---|---|---|
committer | Bob Wilson <bob.wilson@apple.com> | 2009-11-18 03:34:27 +0000 |
commit | 834b08af8d3d8fc6c76ac6ca40674565689e8d7f (patch) | |
tree | 54f4512d0d88c69265505976b1d17cdd845a2fb9 /lib/Target/ARM/ARMSubtarget.cpp | |
parent | 5eea34267376e76aceb53b6c3dfead816021258f (diff) |
Add a target hook to allow changing the tail duplication limit based on the
contents of the block to be duplicated. Use this for ARM Cortex A8/9 to
be more aggressive tail duplicating indirect branches, since it makes it
much more likely that they will be predicted in the branch target buffer.
Testcase coming soon.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89187 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/ARM/ARMSubtarget.cpp')
-rw-r--r-- | lib/Target/ARM/ARMSubtarget.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/Target/ARM/ARMSubtarget.cpp b/lib/Target/ARM/ARMSubtarget.cpp index 87b78a9ee5..432ed78c19 100644 --- a/lib/Target/ARM/ARMSubtarget.cpp +++ b/lib/Target/ARM/ARMSubtarget.cpp @@ -109,6 +109,8 @@ ARMSubtarget::ARMSubtarget(const std::string &TT, const std::string &FS, if (UseNEONFP.getPosition() == 0) UseNEONForSinglePrecisionFP = true; } + HasBranchTargetBuffer = (CPUString == "cortex-a8" || + CPUString == "cortex-a9"); } /// GVIsIndirectSymbol - true if the GV will be accessed via an indirect symbol. |