| Index: runtime/vm/stack_frame.cc
|
| diff --git a/runtime/vm/stack_frame.cc b/runtime/vm/stack_frame.cc
|
| index 268dcb1737bcee746193d2cc33033a2d3d5f64a1..d89797df39c17e626289be29b670818901480573 100644
|
| --- a/runtime/vm/stack_frame.cc
|
| +++ b/runtime/vm/stack_frame.cc
|
| @@ -39,15 +39,16 @@ const char* StackFrame::ToCString() const {
|
| ASSERT(thread_ == Thread::Current());
|
| Zone* zone = Thread::Current()->zone();
|
| if (IsDartFrame()) {
|
| - const Code& code = Code::Handle(LookupDartCode());
|
| + const Code& code = Code::Handle(zone, LookupDartCode());
|
| ASSERT(!code.IsNull());
|
| - const Object& owner = Object::Handle(code.owner());
|
| + const Object& owner = Object::Handle(zone, code.owner());
|
| ASSERT(!owner.IsNull());
|
| if (owner.IsFunction()) {
|
| + const char* opt = code.is_optimized() ? "*" : "";
|
| const Function& function = Function::Cast(owner);
|
| return zone->PrintToString(
|
| - "[%-8s : sp(%#" Px ") fp(%#" Px ") pc(%#" Px ") %s ]", GetName(),
|
| - sp(), fp(), pc(), function.ToFullyQualifiedCString());
|
| + "[%-8s : sp(%#" Px ") fp(%#" Px ") pc(%#" Px ") %s%s ]", GetName(),
|
| + sp(), fp(), pc(), opt, function.ToFullyQualifiedCString());
|
| } else {
|
| return zone->PrintToString(
|
| "[%-8s : sp(%#" Px ") fp(%#" Px ") pc(%#" Px ") %s ]", GetName(),
|
|
|