| Index: src/profiler/cpu-profiler.cc
 | 
| diff --git a/src/profiler/cpu-profiler.cc b/src/profiler/cpu-profiler.cc
 | 
| index 50558f77d50d344a7a730eea4b4243738a66f476..22030bfc71ad61287c7bb156471763116506b94d 100644
 | 
| --- a/src/profiler/cpu-profiler.cc
 | 
| +++ b/src/profiler/cpu-profiler.cc
 | 
| @@ -287,8 +287,15 @@ void CpuProfiler::CodeCreateEvent(Logger::LogEventsAndTags tag,
 | 
|          }
 | 
|        }
 | 
|      } else {
 | 
| -      DCHECK(abstract_code->IsBytecodeArray());
 | 
| -      // TODO(rmcilroy): source position tracking for bytecode arrays.
 | 
| +      BytecodeArray* bytecode = abstract_code->GetBytecodeArray();
 | 
| +      line_table = new JITLineInfoTable();
 | 
| +      interpreter::SourcePositionTableIterator it(
 | 
| +          bytecode->source_position_table());
 | 
| +      for (; !it.done(); it.Advance()) {
 | 
| +        int line_number = script->GetLineNumber(it.source_position()) + 1;
 | 
| +        int pc_offset = it.bytecode_offset() + BytecodeArray::kHeaderSize;
 | 
| +        line_table->SetPosition(pc_offset, line_number);
 | 
| +      }
 | 
|      }
 | 
|    }
 | 
|    rec->entry = profiles_->NewCodeEntry(
 | 
| 
 |