| Index: src/deoptimizer.h
|
| diff --git a/src/deoptimizer.h b/src/deoptimizer.h
|
| index 602a21a0e20b199e7ca9a229b79c0be5be9c4783..1b6e814661f261f1b8cbd7976c55d8a7f2fcd1eb 100644
|
| --- a/src/deoptimizer.h
|
| +++ b/src/deoptimizer.h
|
| @@ -17,17 +17,9 @@ namespace internal {
|
|
|
|
|
| static inline double read_double_value(Address p) {
|
| - // Prevent gcc from using load-double (mips ldc1) on (possibly)
|
| - // non-64-bit aligned address.
|
| - // We assume that the address is 32-bit aligned.
|
| - DCHECK(IsAligned(reinterpret_cast<intptr_t>(p), kInt32Size));
|
| - union conversion {
|
| - double d;
|
| - uint32_t u[2];
|
| - } c;
|
| - c.u[0] = Memory::uint32_at(p);
|
| - c.u[1] = Memory::uint32_at(p + 4);
|
| - return c.d;
|
| + double d;
|
| + memcpy(&d, p, sizeof(d));
|
| + return d;
|
| }
|
|
|
|
|
|
|