5#ifndef V8_CODEGEN_SOURCE_POSITION_H_
6#define V8_CODEGEN_SOURCE_POSITION_H_
18class InstructionStream;
19class OptimizedCompilationInfo;
21class SharedFunctionInfo;
22struct SourcePositionInfo;
122 int64_t
raw()
const {
return static_cast<int64_t
>(
value_); }
159 return lhs.
raw() == rhs.
raw();
163 return !(lhs == rhs);
198 const std::vector<SourcePositionInfo>& stack);
static constexpr T decode(U value)
static V8_NODISCARD constexpr U update(U previous, T value)
static SourcePosition FromRaw(int64_t raw)
int ExternalFileId() const
std::vector< SourcePositionInfo > InliningStack(Isolate *isolate, Tagged< Code > code) const
void Print(std::ostream &out, Tagged< Code > code) const
void SetScriptOffset(int script_offset)
static SourcePosition Unknown()
void SetInliningId(int inlining_id)
static SourcePosition External(int line, int file_id)
SourcePosition(int script_offset=kNoSourcePosition, int inlining_id=kNotInlined)
static const int kNotInlined
void SetExternalFileId(int file_id)
SourcePositionInfo FirstInfo(Isolate *isolate, Tagged< Code > code) const
void SetIsExternal(bool external)
SourcePosition(int line, int file_id, int inlining_id)
bool IsJavaScript() const
void PrintJson(std::ostream &out) const
void SetExternalLine(int line)
bool operator!=(ExternalReference lhs, ExternalReference rhs)
constexpr int kNoSourcePosition
std::ostream & operator<<(std::ostream &os, AtomicMemoryOrder order)
bool operator==(ExternalReference lhs, ExternalReference rhs)
#define DCHECK_GE(v1, v2)
#define DCHECK(condition)
IndirectHandle< Script > script
IndirectHandle< SharedFunctionInfo > shared
SourcePositionInfo(Isolate *isolate, SourcePosition pos, DirectHandle< SharedFunctionInfo > f)
SourcePosition caller_pos