Index: src/deoptimizer.cc |
diff --git a/src/deoptimizer.cc b/src/deoptimizer.cc |
index c1df93769ee8f8ad6ec6c939cb9931fc4626073f..cdf9668df6f494bd30db4f93e2d49f0dc306bc77 100644 |
--- a/src/deoptimizer.cc |
+++ b/src/deoptimizer.cc |
@@ -3260,7 +3260,11 @@ Handle<Object> SlotRef::GetValue(Isolate* isolate) { |
return Handle<Object>(Memory::Object_at(addr_), isolate); |
case INT32: { |
+#if V8_TARGET_LITTLE_ENDIAN || !V8_HOST_ARCH_64_BIT |
Jakob Kummerow
2014/07/19 11:44:36
nit: I think "V8_HOST_ARCH_32_BIT" would be slight
|
int value = Memory::int32_at(addr_); |
+#else |
+ int value = Memory::int32_at(addr_ + kIntSize); |
+#endif |
if (Smi::IsValid(value)) { |
return Handle<Object>(Smi::FromInt(value), isolate); |
} else { |
@@ -3269,7 +3273,11 @@ Handle<Object> SlotRef::GetValue(Isolate* isolate) { |
} |
case UINT32: { |
+#if V8_TARGET_LITTLE_ENDIAN || !V8_HOST_ARCH_64_BIT |
uint32_t value = Memory::uint32_at(addr_); |
+#else |
+ uint32_t value = Memory::uint32_at(addr_ + kIntSize); |
+#endif |
if (value <= static_cast<uint32_t>(Smi::kMaxValue)) { |
return Handle<Object>(Smi::FromInt(static_cast<int>(value)), isolate); |
} else { |