commit | ccb7e96ef0ef743c822ce19aac324b429198bff2 | [log] [tgz] |
---|---|---|
author | Richard Osborne <richard@xmos.com> | Thu Jul 16 10:42:35 2009 +0000 |
committer | Richard Osborne <richard@xmos.com> | Thu Jul 16 10:42:35 2009 +0000 |
tree | fe61e988b5308bc5c137f6148e43bbed11adf4de | |
parent | 7f47ce966219b8dbc37cf8c289660dd83923289f [diff] |
Expand unaligned 32 bit loads from an address which is a constant offset from a 32 bit aligned base as follows: ldw low, base[offset >> 2] ldw high, base[(offset >> 2) + 1] shr low_shifted, low, (offset & 0x3) * 8 shl high_shifted, high, 32 - (offset & 0x3) * 8 or result, low_shifted, high_shifted Expand 32 bit loads / stores with 16 bit alignment into two 16 bit loads / stores. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75902 91177308-0d34-0410-b5e6-96231b3b80d8