[llvm] r345272 - [ARM] Use Cortex-A57 sched model for Cortex-A72
Sam Parker via llvm-commits
llvm-commits at lists.llvm.org
Thu Oct 25 08:08:30 PDT 2018
Author: sam_parker
Date: Thu Oct 25 08:08:29 2018
New Revision: 345272
URL: http://llvm.org/viewvc/llvm-project?rev=345272&view=rev
Log:
[ARM] Use Cortex-A57 sched model for Cortex-A72
This mirrors what we already do for AArch64 as the cores are similar.
As discussed in the review, enabling the machine scheduler causes
more variations in performance changes so it is not enabled for now.
This patch improves LNT scores by a geomean of 1.57% at -O3.
Differential Revision: https://reviews.llvm.org/D53562
Modified:
llvm/trunk/lib/Target/ARM/ARM.td
llvm/trunk/test/Transforms/LoopUnroll/ARM/loop-unrolling.ll
Modified: llvm/trunk/lib/Target/ARM/ARM.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARM.td?rev=345272&r1=345271&r2=345272&view=diff
==============================================================================
--- llvm/trunk/lib/Target/ARM/ARM.td (original)
+++ llvm/trunk/lib/Target/ARM/ARM.td Thu Oct 25 08:08:29 2018
@@ -1043,7 +1043,7 @@ def : ProcessorModel<"cortex-a57", Cort
FeatureAvoidPartialCPSR,
FeatureCheapPredicableCPSR]>;
-def : ProcNoItin<"cortex-a72", [ARMv8a, ProcA72,
+def : ProcessorModel<"cortex-a72", CortexA57Model, [ARMv8a, ProcA72,
FeatureHWDivThumb,
FeatureHWDivARM,
FeatureCrypto,
Modified: llvm/trunk/test/Transforms/LoopUnroll/ARM/loop-unrolling.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/LoopUnroll/ARM/loop-unrolling.ll?rev=345272&r1=345271&r2=345272&view=diff
==============================================================================
--- llvm/trunk/test/Transforms/LoopUnroll/ARM/loop-unrolling.ll (original)
+++ llvm/trunk/test/Transforms/LoopUnroll/ARM/loop-unrolling.ll Thu Oct 25 08:08:29 2018
@@ -1,5 +1,6 @@
; RUN: opt -mtriple=armv7 -mcpu=cortex-a57 -loop-unroll -S %s -o - | FileCheck %s --check-prefix=CHECK-UNROLL-A
; RUN: opt -mtriple=thumbv7 -mcpu=cortex-a57 -loop-unroll -S %s -o - | FileCheck %s --check-prefix=CHECK-UNROLL-A
+; RUN: opt -mtriple=thumbv7 -mcpu=cortex-a72 -loop-unroll -S %s -o - | FileCheck %s --check-prefix=CHECK-UNROLL-A
; RUN: opt -mtriple=thumbv8m -mcpu=cortex-m23 -loop-unroll -S %s -o - | FileCheck %s --check-prefix=CHECK-UNROLL-T1
; RUN: opt -mtriple=thumbv8m.main -mcpu=cortex-m33 -loop-unroll -S %s -o - | FileCheck %s --check-prefix=CHECK-UNROLL-T2
; RUN: opt -mtriple=thumbv7em -mcpu=cortex-m7 -loop-unroll -S %s -o - | FileCheck %s --check-prefix=CHECK-UNROLL-T2
More information about the llvm-commits
mailing list