diff options
author | Chad Rosier <mcrosier@codeaurora.org> | 2014-03-06 16:04:00 +0000 |
---|---|---|
committer | Chad Rosier <mcrosier@codeaurora.org> | 2014-03-06 16:04:00 +0000 |
commit | 514d703ff6d7714b30b6c702aeb8c6d7a9967d75 (patch) | |
tree | 23fe1ab81509e4082a6a2d75ce3de663c3285268 /lib/Target/AArch64/AArch64Subtarget.h | |
parent | abe768029b11acb15bbc2dfe3eed9d03b560af8d (diff) | |
download | llvm-514d703ff6d7714b30b6c702aeb8c6d7a9967d75.tar.gz llvm-514d703ff6d7714b30b6c702aeb8c6d7a9967d75.tar.bz2 llvm-514d703ff6d7714b30b6c702aeb8c6d7a9967d75.tar.xz |
[AArch64] This is a work in progress to provide a machine description
for the Cortex-A53 subtarget in the AArch64 backend.
This patch lays the ground work to annotate each AArch64 instruction
(no NEON yet) with a list of SchedReadWrite types. The patch also
provides the Cortex-A53 processor resources, maps those the the default
SchedReadWrites, and provides basic latency. NEON support will be added
in a subsequent patch with proper forwarding logic.
Verification was done by setting the pre-RA scheduler to linearize to
better gauge the effect of the MIScheduler. Even without modeling the
forward logic, the results show a modest improvement for Cortex-A53.
Reviewers: apazos, mcrosier, atrick
Patch by Dave Estes <cestes@codeaurora.org>!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@203125 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/AArch64/AArch64Subtarget.h')
-rw-r--r-- | lib/Target/AArch64/AArch64Subtarget.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/lib/Target/AArch64/AArch64Subtarget.h b/lib/Target/AArch64/AArch64Subtarget.h index adceba7842..68c6c4b63c 100644 --- a/lib/Target/AArch64/AArch64Subtarget.h +++ b/lib/Target/AArch64/AArch64Subtarget.h @@ -29,6 +29,11 @@ class GlobalValue; class AArch64Subtarget : public AArch64GenSubtargetInfo { virtual void anchor(); protected: + enum ARMProcFamilyEnum {Others, CortexA53, CortexA57}; + + /// ARMProcFamily - ARM processor family: Cortex-A53, Cortex-A57, and others. + ARMProcFamilyEnum ARMProcFamily; + bool HasFPARMv8; bool HasNEON; bool HasCrypto; |