summaryrefslogtreecommitdiff
path: root/runtime/stack.cc
diff options
context:
space:
mode:
author David Brazdil <dbrazdil@google.com> 2015-09-15 12:34:04 +0000
committer David Brazdil <dbrazdil@google.com> 2015-09-15 12:34:04 +0000
commit77a48ae01bbc5b05ca009cf09e2fcb53e4c8ff23 (patch)
tree780c7d6bdee784c2f8248979de348491cfb63b34 /runtime/stack.cc
parent659562aaf133c41b8d90ec9216c07646f0f14362 (diff)
Revert "Revert "ART: Register allocation and runtime support for try/catch""
The original CL triggered b/24084144 which has been fixed by Ib72e12a018437c404e82f7ad414554c66a4c6f8c. This reverts commit 659562aaf133c41b8d90ec9216c07646f0f14362. Change-Id: Id8980436172457d0fcb276349c4405f7c4110a55
Diffstat (limited to 'runtime/stack.cc')
-rw-r--r--runtime/stack.cc4
1 files changed, 4 insertions, 0 deletions
diff --git a/runtime/stack.cc b/runtime/stack.cc
index a765a3fc5e..d956f0e25d 100644
--- a/runtime/stack.cc
+++ b/runtime/stack.cc
@@ -325,6 +325,10 @@ bool StackVisitor::GetVRegFromOptimizedCode(ArtMethod* m, uint16_t vreg, VRegKin
bool StackVisitor::GetRegisterIfAccessible(uint32_t reg, VRegKind kind, uint32_t* val) const {
const bool is_float = (kind == kFloatVReg) || (kind == kDoubleLoVReg) || (kind == kDoubleHiVReg);
+
+ // X86 float registers are 64-bit and the logic below does not apply.
+ DCHECK(!is_float || kRuntimeISA != InstructionSet::kX86);
+
if (!IsAccessibleRegister(reg, is_float)) {
return false;
}