Index: src/deoptimizer.cc |
diff --git a/src/deoptimizer.cc b/src/deoptimizer.cc |
index 2c3f4ec8f2dcf9e10edfc55eace4e2e1bb4f815d..3cd2caa06281c2efc2d2dff6767e050a1cd7b9e8 100644 |
--- a/src/deoptimizer.cc |
+++ b/src/deoptimizer.cc |
@@ -3132,7 +3132,11 @@ uint32_t TranslatedState::GetUInt32Slot(Address fp, int slot_offset) { |
} |
Float32 TranslatedState::GetFloatSlot(Address fp, int slot_offset) { |
+#if !V8_TARGET_ARCH_S390X && !V8_TARGET_ARCH_PPC64 |
bbudge
2017/04/24 20:49:24
Can you just modify the GetUInt32Slot function (co
john.yan
2017/04/24 21:00:53
Yes, float/double is treated differently than int3
|
return Float32::FromBits(GetUInt32Slot(fp, slot_offset)); |
+#else |
+ return Float32::FromBits(Memory::uint32_at(fp + slot_offset)); |
+#endif |
} |
Float64 TranslatedState::GetDoubleSlot(Address fp, int slot_offset) { |