Chromium Code Reviews| Index: runtime/vm/assembler_x64_test.cc |
| diff --git a/runtime/vm/assembler_x64_test.cc b/runtime/vm/assembler_x64_test.cc |
| index 1d599485f43ea62dbe548cb57d166f00569b4e59..254099c807911b57d3fd9a6d16bc56bfbde571da 100644 |
| --- a/runtime/vm/assembler_x64_test.cc |
| +++ b/runtime/vm/assembler_x64_test.cc |
| @@ -2439,18 +2439,20 @@ ASSEMBLER_TEST_RUN(DoubleFPOperations, test) { |
| ASSEMBLER_TEST_GENERATE(Int32ToDoubleConversion, assembler) { |
| - __ movl(RDX, Immediate(6)); |
| - __ cvtsi2sd(XMM0, RDX); |
| - __ movl(RDX, Immediate(8)); |
| - __ cvtsi2sd(XMM8, RDX); |
| + // Fill upper bits with garbage. |
| + __ movq(RDX, Immediate(0x1111111100000006)); |
| + __ cvtsi2sd32(XMM0, RDX); |
| + // Fill upper bits with garbage. |
| + __ movq(RDX, Immediate(0x2222222200000008)); |
|
Vyacheslav Egorov (Google)
2014/10/09 19:08:58
maybe use another x64 register instead of RDX (e.g
Cutch
2014/10/09 20:48:22
Done.
|
| + __ cvtsi2sd32(XMM8, RDX); |
| __ subsd(XMM0, XMM8); |
| __ ret(); |
| } |
| ASSEMBLER_TEST_RUN(Int32ToDoubleConversion, test) { |
| - typedef double (*IntToDoubleConversionCode)(); |
| - double res = reinterpret_cast<IntToDoubleConversionCode>(test->entry())(); |
| + typedef double (*Int32ToDoubleConversion)(); |
| + double res = reinterpret_cast<Int32ToDoubleConversion>(test->entry())(); |
| EXPECT_FLOAT_EQ(-2.0, res, 0.001); |
| } |