summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMinSeong Kim <min.s.kim@samsung.com>2015-12-17 14:51:22 +0000
committerMinSeong Kim <min.s.kim@samsung.com>2015-12-17 14:51:22 +0000
commitd05e9fd194213d35ebf3fd7eadcf8a5e58ad3aa2 (patch)
treedc5ecc1a673315d4950a374de5049136db7d92cf
parent4355e404d50c14674e3794c431b49fa7c0191277 (diff)
downloadbcm5719-llvm-d05e9fd194213d35ebf3fd7eadcf8a5e58ad3aa2.tar.gz
bcm5719-llvm-d05e9fd194213d35ebf3fd7eadcf8a5e58ad3aa2.zip
[AArch64] Enable PostRAScheduler for AArch64 generic build
This patch enables PostRAScheduler specifically for AArch64 generic build, which is beneficial from the performance perspective. Speedups up to 2 to 7% for some benchmarks on A57 and A53 are observed. Also benchmarks from LLVM test-suite did not regress. Differential Revision: http://reviews.llvm.org/D15557 llvm-svn: 255896
-rw-r--r--llvm/lib/Target/AArch64/AArch64Subtarget.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/Target/AArch64/AArch64Subtarget.h b/llvm/lib/Target/AArch64/AArch64Subtarget.h
index cf94445a885..1b8b9b27719 100644
--- a/llvm/lib/Target/AArch64/AArch64Subtarget.h
+++ b/llvm/lib/Target/AArch64/AArch64Subtarget.h
@@ -102,7 +102,7 @@ public:
const Triple &getTargetTriple() const { return TargetTriple; }
bool enableMachineScheduler() const override { return true; }
bool enablePostRAScheduler() const override {
- return isCortexA53() || isCortexA57();
+ return isGeneric() || isCortexA53() || isCortexA57();
}
bool hasV8_1aOps() const { return HasV8_1aOps; }
@@ -139,6 +139,7 @@ public:
bool isTargetELF() const { return TargetTriple.isOSBinFormatELF(); }
bool isTargetMachO() const { return TargetTriple.isOSBinFormatMachO(); }
+ bool isGeneric() const { return CPUString == "generic"; }
bool isCyclone() const { return CPUString == "cyclone"; }
bool isCortexA57() const { return CPUString == "cortex-a57"; }
bool isCortexA53() const { return CPUString == "cortex-a53"; }
OpenPOWER on IntegriCloud