| Index: src/arm/constants-arm.h
|
| diff --git a/src/arm/constants-arm.h b/src/arm/constants-arm.h
|
| index 2bade20fedf5979475bc7d36ea1ba8f7a10c8095..9306194ac6b71971b384df78545f591aa1e2a5e5 100644
|
| --- a/src/arm/constants-arm.h
|
| +++ b/src/arm/constants-arm.h
|
| @@ -374,10 +374,10 @@ const int32_t kDefaultStopCode = -1;
|
| // Type of VFP register. Determines register encoding.
|
| enum VFPRegPrecision {
|
| kSinglePrecision = 0,
|
| - kDoublePrecision = 1
|
| + kDoublePrecision = 1,
|
| + kSimd128Precision = 2
|
| };
|
|
|
| -
|
| // VFP FPSCR constants.
|
| enum VFPConversionMode {
|
| kFPSCRRounding = 0,
|
| @@ -672,10 +672,13 @@ class Instruction {
|
| // bit specifier. one_bit is the position of the additional single bit
|
| // specifier.
|
| inline int VFPGlueRegValue(VFPRegPrecision pre, int four_bit, int one_bit) {
|
| - if (pre == kSinglePrecision) {
|
| + if (pre == kDoublePrecision) {
|
| + return (Bit(one_bit) << 4) | Bits(four_bit + 3, four_bit);
|
| + } else if (pre == kSinglePrecision) {
|
| return (Bits(four_bit + 3, four_bit) << 1) | Bit(one_bit);
|
| }
|
| - return (Bit(one_bit) << 4) | Bits(four_bit + 3, four_bit);
|
| + DCHECK_EQ(kSimd128Precision, pre);
|
| + return (Bit(one_bit) << 3) | Bits(four_bit + 3, four_bit) >> 1;
|
| }
|
|
|
| // We need to prevent the creation of instances of class Instruction.
|
|
|