llvm-6502/test
Ahmed Bougacha bc47ceef43 [ARM] Don't break alignment when combining base updates into load/stores.
r223862/r224203 tried to also combine base-updating load/stores.
There was a mistake there: the alignment was added as is as an operand to
the ARMISD::VLD/VST node.  However, the VLD/VST selection logic doesn't care
about less-than-standard alignment attributes.
For example, no matter the alignment of a v2i64 load (say 1), SelectVLD picks
VLD1q64 (because of the memory type).  But VLD1q64 ("vld1.64 {dXX, dYY}") is
8-aligned, per ARMARMv7a 3.2.1.
For the 1-aligned load, what we really want is VLD1q8.

This commit introduces bitcasts if necessary, and changes the vld/vst type to
one whose standard alignment matches the original load/store alignment.

Differential Revision: http://reviews.llvm.org/D6759


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@224754 91177308-0d34-0410-b5e6-96231b3b80d8
2014-12-23 06:07:31 +00:00
..
Analysis
Assembler
Bindings
Bitcode
BugPoint
CodeGen [ARM] Don't break alignment when combining base updates into load/stores. 2014-12-23 06:07:31 +00:00
DebugInfo Revert r224739: Debug info: Teach SROA how to update debug info for 2014-12-23 02:58:14 +00:00
ExecutionEngine
Feature
FileCheck
Instrumentation [sanitizer] prevent function call merging for sanitizer-coverage callbacks 2014-12-16 21:24:15 +00:00
Integer
JitListener
Linker Reapply "Linker: Drop superseded subprograms" 2014-12-18 01:05:33 +00:00
LTO llvm-lto: Add testing coverage for local contexts 2014-12-17 02:00:38 +00:00
MC Fix Windows unwind info for functions in sections other than .text 2014-12-22 22:10:08 +00:00
Object [Object] Don't crash on empty export lists. 2014-12-19 02:31:01 +00:00
Other
SymbolRewriter
TableGen
tools Add printing the LC_ROUTINES load commands with llvm-objdump’s -private-headers. 2014-12-19 22:25:22 +00:00
Transforms [LCSSA] Handle PHI insertion in disjoint loops 2014-12-22 22:35:46 +00:00
Unit
Verifier
YAMLParser
.clang-format
CMakeLists.txt
lit.cfg Teach lit.cfg to recognize -windows-gnu in addition to -mingw32. 2014-12-17 09:55:15 +00:00
lit.site.cfg.in
Makefile
Makefile.tests
TestRunner.sh