summaryrefslogtreecommitdiffstats
path: root/runtime/quick_exception_handler.cc
diff options
context:
space:
mode:
authorSebastien Hertz <shertz@google.com>2015-06-09 14:09:14 +0200
committerMingyao Yang <mingyao@google.com>2015-06-18 14:14:29 -0700
commitbf1fa2ccb5e7409910b99dc46b616e44c66ade68 (patch)
tree652b3ae6787c63955b745693da6919407cf5ebf5 /runtime/quick_exception_handler.cc
parentef484d442a3dcae2cd1842c5be0623f5cf71e4ab (diff)
downloadandroid_art-bf1fa2ccb5e7409910b99dc46b616e44c66ade68.tar.gz
android_art-bf1fa2ccb5e7409910b99dc46b616e44c66ade68.tar.bz2
android_art-bf1fa2ccb5e7409910b99dc46b616e44c66ade68.zip
Follow up on CL 151605
- Fixes return type of StackedShadowFrameRecord::GetType - Makes StackedShadowFrameType an enum class (scoped enum) - Moves DeoptimizationReturnValueRecord and StackedShadowFrameRecord to thread.cc file and use forward declaration in thread.h header - Fixes tools/generate-operator-out.py for scoped enum classes. Bug: 20845490 (cherry picked from commit f795869da0a1fa006fdcdacd8afb6149a63fc1a7) Change-Id: I6b67e288b1db563699161e58ec2e2330d42dd8f5
Diffstat (limited to 'runtime/quick_exception_handler.cc')
-rw-r--r--runtime/quick_exception_handler.cc7
1 files changed, 4 insertions, 3 deletions
diff --git a/runtime/quick_exception_handler.cc b/runtime/quick_exception_handler.cc
index a10c5c8200..02baad758f 100644
--- a/runtime/quick_exception_handler.cc
+++ b/runtime/quick_exception_handler.cc
@@ -178,7 +178,7 @@ class DeoptimizeStackVisitor FINAL : public StackVisitor {
// In case there is no deoptimized shadow frame for this upcall, we still
// need to push a nullptr to the stack since there is always a matching pop after
// the long jump.
- self_->PushStackedShadowFrame(nullptr, kDeoptimizationShadowFrame);
+ self_->PushStackedShadowFrame(nullptr, StackedShadowFrameType::kDeoptimizationShadowFrame);
stacked_shadow_frame_pushed_ = true;
}
return false; // End stack walk.
@@ -212,7 +212,8 @@ class DeoptimizeStackVisitor FINAL : public StackVisitor {
CHECK(verifier_success) << PrettyMethod(m);
ShadowFrame* new_frame = ShadowFrame::CreateDeoptimizedFrame(num_regs, nullptr, m, dex_pc);
{
- ScopedStackedShadowFramePusher pusher(self_, new_frame, kShadowFrameUnderConstruction);
+ ScopedStackedShadowFramePusher pusher(self_, new_frame,
+ StackedShadowFrameType::kShadowFrameUnderConstruction);
const std::vector<int32_t> kinds(verifier.DescribeVRegs(dex_pc));
// Markers for dead values, used when the verifier knows a Dex register is undefined,
@@ -318,7 +319,7 @@ class DeoptimizeStackVisitor FINAL : public StackVisitor {
// Will be popped after the long jump after DeoptimizeStack(),
// right before interpreter::EnterInterpreterFromDeoptimize().
stacked_shadow_frame_pushed_ = true;
- self_->PushStackedShadowFrame(new_frame, kDeoptimizationShadowFrame);
+ self_->PushStackedShadowFrame(new_frame, StackedShadowFrameType::kDeoptimizationShadowFrame);
}
prev_shadow_frame_ = new_frame;
return true;