| Index: test/cctest/test-macro-assembler-arm.cc | 
| diff --git a/test/cctest/test-macro-assembler-arm.cc b/test/cctest/test-macro-assembler-arm.cc | 
| index dcc5fba0a26244b55a69cf0e6ae02894c143fcca..4de4647f983cc4766ab86f5b5aac487f79cd3f0f 100644 | 
| --- a/test/cctest/test-macro-assembler-arm.cc | 
| +++ b/test/cctest/test-macro-assembler-arm.cc | 
| @@ -156,6 +156,8 @@ TEST(ExtractLane) { | 
| int32_t i8x16_high[16]; | 
| int32_t f32x4_low[4]; | 
| int32_t f32x4_high[4]; | 
| +    int32_t i8x16_low_d[16]; | 
| +    int32_t i8x16_high_d[16]; | 
| } T; | 
| T t; | 
|  | 
| @@ -185,6 +187,15 @@ TEST(ExtractLane) { | 
| __ str(r5, MemOperand(r0, offsetof(T, i8x16_low) + 4 * i)); | 
| } | 
|  | 
| +  for (int i = 0; i < 8; i++) { | 
| +    __ mov(r4, Operand(i)); | 
| +    __ vdup(Neon8, q1, r4);  // q1 = d2,d3 | 
| +    __ ExtractLane(r5, d2, NeonS8, i); | 
| +    __ str(r5, MemOperand(r0, offsetof(T, i8x16_low_d) + 4 * i)); | 
| +    __ ExtractLane(r5, d3, NeonS8, i); | 
| +    __ str(r5, MemOperand(r0, offsetof(T, i8x16_low_d) + 4 * (i + 8))); | 
| +  } | 
| + | 
| if (CpuFeatures::IsSupported(VFP32DREGS)) { | 
| for (int i = 0; i < 4; i++) { | 
| __ mov(r4, Operand(-i)); | 
| @@ -209,6 +220,15 @@ TEST(ExtractLane) { | 
| __ ExtractLane(r5, q15, NeonS8, i); | 
| __ str(r5, MemOperand(r0, offsetof(T, i8x16_high) + 4 * i)); | 
| } | 
| + | 
| +    for (int i = 0; i < 8; i++) { | 
| +      __ mov(r4, Operand(-i)); | 
| +      __ vdup(Neon8, q15, r4);  // q1 = d30,d31 | 
| +      __ ExtractLane(r5, d30, NeonS8, i); | 
| +      __ str(r5, MemOperand(r0, offsetof(T, i8x16_high_d) + 4 * i)); | 
| +      __ ExtractLane(r5, d31, NeonS8, i); | 
| +      __ str(r5, MemOperand(r0, offsetof(T, i8x16_high_d) + 4 * (i + 8))); | 
| +    } | 
| } | 
|  | 
| __ ldm(ia_w, sp, r4.bit() | r5.bit() | pc.bit()); | 
| @@ -234,6 +254,10 @@ TEST(ExtractLane) { | 
| for (int i = 0; i < 16; i++) { | 
| CHECK_EQ(i, t.i8x16_low[i]); | 
| } | 
| +  for (int i = 0; i < 8; i++) { | 
| +    CHECK_EQ(i, t.i8x16_low_d[i]); | 
| +    CHECK_EQ(i, t.i8x16_low_d[i + 8]); | 
| +  } | 
| if (CpuFeatures::IsSupported(VFP32DREGS)) { | 
| for (int i = 0; i < 4; i++) { | 
| CHECK_EQ(-i, t.i32x4_high[i]); | 
| @@ -245,6 +269,10 @@ TEST(ExtractLane) { | 
| for (int i = 0; i < 16; i++) { | 
| CHECK_EQ(-i, t.i8x16_high[i]); | 
| } | 
| +    for (int i = 0; i < 8; i++) { | 
| +      CHECK_EQ(-i, t.i8x16_high_d[i]); | 
| +      CHECK_EQ(-i, t.i8x16_high_d[i + 8]); | 
| +    } | 
| } | 
| } | 
|  | 
|  |