diff options
author | Quentin Colombet <qcolombet@apple.com> | 2013-10-11 18:01:14 +0000 |
---|---|---|
committer | Quentin Colombet <qcolombet@apple.com> | 2013-10-11 18:01:14 +0000 |
commit | 41dc258f714155aca59ed28940d8f73202ba74ef (patch) | |
tree | 0f7fb2f5ef1876be7a50dea61114a5a9bef4fb24 /llvm/test/CodeGen/ARM/struct_byval.ll | |
parent | 11202deb4ae13a17a5768a8f9aeefd4e3a616b69 (diff) | |
download | bcm5719-llvm-41dc258f714155aca59ed28940d8f73202ba74ef.tar.gz bcm5719-llvm-41dc258f714155aca59ed28940d8f73202ba74ef.zip |
[DAGCombiner] Slice a big load in two loads when the element are next to each
other in memory and the target has paired load and performs post-isel loads
combining.
E.g., this optimization will transform something like this:
a = load i64* addr
b = trunc i64 a to i32
c = lshr i64 a, 32
d = trunc i64 c to i32
into:
b = load i32* addr1
d = load i32* addr2
Where addr1 = addr2 +/- sizeof(i32), if the target supports paired load and
performs post-isel loads combining.
One should overload TargetLowering::hasPairedLoad to provide this information.
The default is false.
<rdar://problem/14477220>
llvm-svn: 192471
Diffstat (limited to 'llvm/test/CodeGen/ARM/struct_byval.ll')
0 files changed, 0 insertions, 0 deletions