Add a ARM specific pre-allocation pass that re-schedule loads / stores from
authorEvan Cheng <evan.cheng@apple.com>
Sat, 13 Jun 2009 09:12:55 +0000 (09:12 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Sat, 13 Jun 2009 09:12:55 +0000 (09:12 +0000)
commite7d6df73530a98a5cc5f69ddfd17073b464caa57
tree2ee5d1bb7677ae95573303bdc8a19a2e96866f82
parentdaf9e02893e7e17ca2267ffd5e994f824adbb624
Add a ARM specific pre-allocation pass that re-schedule loads / stores from
consecutive addresses togther. This makes it easier for the post-allocation pass
to form ldm / stm.

This is step 1. We are still missing a lot of ldm / stm opportunities because
of register allocation are not done in the desired order. More enhancements
coming.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73291 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/LLVMTargetMachine.cpp
lib/Target/ARM/ARM.h
lib/Target/ARM/ARMLoadStoreOptimizer.cpp
lib/Target/ARM/ARMTargetMachine.cpp
lib/Target/ARM/ARMTargetMachine.h
test/CodeGen/ARM/stm.ll [new file with mode: 0644]