]> granicus.if.org Git - llvm/commit
[ARM] Cortex-A57 scheduling model for ARM backend (AArch32)
authorJaved Absar <javed.absar@arm.com>
Fri, 2 Jun 2017 08:53:19 +0000 (08:53 +0000)
committerJaved Absar <javed.absar@arm.com>
Fri, 2 Jun 2017 08:53:19 +0000 (08:53 +0000)
commit8f528aa2a7deda754d8949b36808a5f717961240
tree1fb2cc7925aaf41a47983dae28a2b7444a10a37e
parente1e12690838e554c54e90e1000d5cd3c7539ec00
[ARM] Cortex-A57 scheduling model for ARM backend (AArch32)

This patch implements the Cortex-A57 scheduling model.
The main code is in ARMScheduleA57.td, ARMScheduleA57WriteRes.td.
Small changes in cpp,.h files to support required scheduling predicates.

Scheduling model implemented according to:
 http://infocenter.arm.com/help/topic/com.arm.doc.uan0015b/Cortex_A57_Software_Optimization_Guide_external.pdf.

Patch by : Andrew Zhogin (submitted on his behalf, as requested).
Rewiewed by: Renato Golin, Diana Picus, Javed Absar, Kristof Beyls.
Differential Revision: https://reviews.llvm.org/D28152

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@304530 91177308-0d34-0410-b5e6-96231b3b80d8
19 files changed:
include/llvm/CodeGen/TargetSchedule.h
lib/Target/ARM/ARM.td
lib/Target/ARM/ARMBaseInstrInfo.cpp
lib/Target/ARM/ARMBaseInstrInfo.h
lib/Target/ARM/ARMSchedule.td
lib/Target/ARM/ARMScheduleA57.td [new file with mode: 0644]
lib/Target/ARM/ARMScheduleA57WriteRes.td [new file with mode: 0644]
lib/Target/ARM/ARMSubtarget.h
test/CodeGen/ARM/cortex-a57-misched-alu.ll [new file with mode: 0644]
test/CodeGen/ARM/cortex-a57-misched-basic.ll [new file with mode: 0644]
test/CodeGen/ARM/cortex-a57-misched-ldm-wrback.ll [new file with mode: 0644]
test/CodeGen/ARM/cortex-a57-misched-ldm.ll [new file with mode: 0644]
test/CodeGen/ARM/cortex-a57-misched-stm-wrback.ll [new file with mode: 0644]
test/CodeGen/ARM/cortex-a57-misched-stm.ll [new file with mode: 0644]
test/CodeGen/ARM/cortex-a57-misched-vfma.ll [new file with mode: 0644]
test/CodeGen/ARM/cortex-a57-misched-vldm-wrback.ll [new file with mode: 0644]
test/CodeGen/ARM/cortex-a57-misched-vldm.ll [new file with mode: 0644]
test/CodeGen/ARM/cortex-a57-misched-vstm-wrback.ll [new file with mode: 0644]
test/CodeGen/ARM/cortex-a57-misched-vstm.ll [new file with mode: 0644]