| Index: src/deoptimizer.cc
|
| diff --git a/src/deoptimizer.cc b/src/deoptimizer.cc
|
| index 6fe51bb3aff48ead9cde4b6b4139bf093a5c468c..a0ec810a3a1151e936d4636db165f40906eed724 100644
|
| --- a/src/deoptimizer.cc
|
| +++ b/src/deoptimizer.cc
|
| @@ -2730,8 +2730,12 @@ Deoptimizer::DeoptInfo Deoptimizer::GetDeoptInfo(Code* code, Address pc) {
|
| }
|
| if (info->rmode() == RelocInfo::DEOPT_POSITION) {
|
| int raw_position = static_cast<int>(info->data());
|
| - last_position = raw_position ? SourcePosition::FromRaw(raw_position)
|
| - : SourcePosition::Unknown();
|
| + if (raw_position > 0) {
|
| + last_position.SetScriptOffset(raw_position - 2);
|
| + } else {
|
| + DCHECK(raw_position < 0);
|
| + last_position.SetInliningId(-raw_position - 2);
|
| + }
|
| } else if (info->rmode() == RelocInfo::DEOPT_ID) {
|
| last_deopt_id = static_cast<int>(info->data());
|
| } else if (info->rmode() == RelocInfo::DEOPT_REASON) {
|
|
|