[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