11cb0ef41Sopenharmony_ci// Copyright 2017 the V8 project authors. All rights reserved. 21cb0ef41Sopenharmony_ci// Use of this source code is governed by a BSD-style license that can be 31cb0ef41Sopenharmony_ci// found in the LICENSE file. 41cb0ef41Sopenharmony_ci 51cb0ef41Sopenharmony_ci#include "src/interpreter/bytecode-source-info.h" 61cb0ef41Sopenharmony_ci 71cb0ef41Sopenharmony_ci#include <iomanip> 81cb0ef41Sopenharmony_ci#include "src/codegen/source-position-table.h" 91cb0ef41Sopenharmony_ci 101cb0ef41Sopenharmony_cinamespace v8 { 111cb0ef41Sopenharmony_cinamespace internal { 121cb0ef41Sopenharmony_cinamespace interpreter { 131cb0ef41Sopenharmony_ci 141cb0ef41Sopenharmony_cistd::ostream& operator<<(std::ostream& os, const BytecodeSourceInfo& info) { 151cb0ef41Sopenharmony_ci if (info.is_valid()) { 161cb0ef41Sopenharmony_ci char description = info.is_statement() ? 'S' : 'E'; 171cb0ef41Sopenharmony_ci os << info.source_position() << ' ' << description << '>'; 181cb0ef41Sopenharmony_ci } 191cb0ef41Sopenharmony_ci return os; 201cb0ef41Sopenharmony_ci} 211cb0ef41Sopenharmony_ci 221cb0ef41Sopenharmony_ci} // namespace interpreter 231cb0ef41Sopenharmony_ci} // namespace internal 241cb0ef41Sopenharmony_ci} // namespace v8 25