| Index: runtime/vm/assembler_arm.cc
|
| diff --git a/runtime/vm/assembler_arm.cc b/runtime/vm/assembler_arm.cc
|
| index 74eb9a680e343bf5da9c53d0cd45bad7f6eea2b4..ff2ecfa9db2a62549f411961aa62ac2958227fa0 100644
|
| --- a/runtime/vm/assembler_arm.cc
|
| +++ b/runtime/vm/assembler_arm.cc
|
| @@ -3316,7 +3316,8 @@ Address Assembler::ElementAddressForRegIndex(bool is_load,
|
| ASSERT(array != IP);
|
| ASSERT(index != IP);
|
| const Register base = is_load ? IP : index;
|
| - if ((offset != 0) || (size == kSWord) || (size == kDWord) ||
|
| + if ((offset != 0) || (is_load && (size == kByte)) || (size == kHalfword) ||
|
| + (size == kUnsignedHalfword) || (size == kSWord) || (size == kDWord) ||
|
| (size == kRegList)) {
|
| if (shift < 0) {
|
| ASSERT(shift == -1);
|
|
|