<div dir="ltr">Hi,<div><br></div><div>I think this makes sense. LGTM!</div><div><br></div><div>James</div></div><br><div class="gmail_quote"><div dir="ltr">On Wed, 16 Dec 2015 at 06:56 MinSeong KIM via llvm-commits <<a href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">MinSeongKIM created this revision.<br>
MinSeongKIM added reviewers: jmolloy, t.p.northover, mcrosier.<br>
MinSeongKIM added a subscriber: llvm-commits.<br>
Herald added subscribers: rengolin, aemerson.<br>
<br>
This patch enables PostRAScheduler specifically for AArch64 generic build,<br>
which is beneficial from the performance perspective.<br>
Speedups up to 2 to 7% for some benchmarks on A57 and A53 are observed.<br>
Also benchmarks from LLVM test-suite did not regress.<br>
<br>
<a href="http://reviews.llvm.org/D15557" rel="noreferrer" target="_blank">http://reviews.llvm.org/D15557</a><br>
<br>
Files:<br>
lib/Target/AArch64/AArch64Subtarget.h<br>
<br>
Index: lib/Target/AArch64/AArch64Subtarget.h<br>
===================================================================<br>
--- lib/Target/AArch64/AArch64Subtarget.h<br>
+++ lib/Target/AArch64/AArch64Subtarget.h<br>
@@ -102,7 +102,7 @@<br>
const Triple &getTargetTriple() const { return TargetTriple; }<br>
bool enableMachineScheduler() const override { return true; }<br>
bool enablePostRAScheduler() const override {<br>
- return isCortexA53() || isCortexA57();<br>
+ return isGeneric() || isCortexA53() || isCortexA57();<br>
}<br>
<br>
bool hasV8_1aOps() const { return HasV8_1aOps; }<br>
@@ -139,6 +139,7 @@<br>
bool isTargetELF() const { return TargetTriple.isOSBinFormatELF(); }<br>
bool isTargetMachO() const { return TargetTriple.isOSBinFormatMachO(); }<br>
<br>
+ bool isGeneric() const { return CPUString == "generic"; }<br>
bool isCyclone() const { return CPUString == "cyclone"; }<br>
bool isCortexA57() const { return CPUString == "cortex-a57"; }<br>
bool isCortexA53() const { return CPUString == "cortex-a53"; }<br>
<br>
<br>
_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><br>
</blockquote></div>