16 if (!
pos.script.is_null() && IsString(
pos.script->name())) {
17 out << Cast<String>(
pos.script->name())->ToCString().get();
21 out <<
":" <<
pos.line + 1 <<
":" <<
pos.column + 1 <<
">";
26 const std::vector<SourcePositionInfo>& stack) {
29 if (!first) out <<
" inlined at ";
40 out <<
"<not inlined:";
54 std::vector<SourcePositionInfo>
stack;
55 while (
pos.isInlined()) {
58 pos = inl.position.position;
69 std::vector<SourcePositionInfo>
stack;
70 while (
pos.isInlined()) {
72 deopt_data->InliningPositions()->get(
pos.InliningId());
90 if (
pos.isInlined()) {
92 deopt_data->InliningPositions()->get(
pos.InliningId());
106 if (IsScript(function->script())) {
108 source_name = script->name();
112 if (IsString(source_name)) {
113 out << Cast<String>(source_name)->ToCString().get();
117 out <<
":" <<
pos.line + 1 <<
":" <<
pos.column + 1 <<
">";
124 <<
" \"inliningId\" : " <<
InliningId() <<
"}";
126 out <<
"{ \"scriptOffset\" : " <<
ScriptOffset() <<
", "
127 <<
" \"inliningId\" : " <<
InliningId() <<
"}";
136 Print(out, function);
144 Print(out, function);
146 out <<
" inlined at ";
158 if (!IsScript(maybe_script))
return;
164 column = info.column;
V8_INLINE bool is_null() const
IndirectHandle< SharedFunctionInfo > shared_info() const
InlinedFunctionList & inlined_functions()
static bool GetPositionInfo(DirectHandle< Script > script, int position, PositionInfo *info, OffsetFlag offset_flag=OffsetFlag::kWithOffset)
int ExternalFileId() const
std::vector< SourcePositionInfo > InliningStack(Isolate *isolate, Tagged< Code > code) const
void Print(std::ostream &out, Tagged< Code > code) const
SourcePositionInfo FirstInfo(Isolate *isolate, Tagged< Code > code) const
void PrintJson(std::ostream &out) const
Handle< SharedFunctionInfo > info
ZoneStack< RpoNumber > & stack
V8_INLINE IndirectHandle< T > handle(Tagged< T > object, Isolate *isolate)
V8_INLINE IndirectHandle< T > indirect_handle(DirectHandle< T > handle)
std::ostream & operator<<(std::ostream &os, AtomicMemoryOrder order)
Tagged< To > Cast(Tagged< From > value, const v8::SourceLocation &loc=INIT_SOURCE_LOCATION_IN_DEBUG)
SourcePositionInfo(Isolate *isolate, SourcePosition pos, DirectHandle< SharedFunctionInfo > f)