// Copyright 2018 the V8 project authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef V8_CODEGEN_CODE_COMMENTS_H_ #define V8_CODEGEN_CODE_COMMENTS_H_ #include <ostream> #include <string> #include <vector> #include "include/v8-internal.h" #include "src/base/macros.h" namespace v8 { namespace internal { class Assembler; // InstructionStream comments section layout: // byte count content // ------------------------------------------------------------------------ // 4 size as uint32_t (only for a check) // [Inline array of CodeCommentEntry in increasing pc_offset order] // ┌ 4 pc_offset of entry as uint32_t // ├ 4 length of the comment including terminating '\0' // └ <variable length> characters of the comment including terminating '\0' struct CodeCommentEntry { … }; class CodeCommentsWriter { … }; class V8_EXPORT_PRIVATE CodeCommentsIterator { … }; } // namespace internal } // namespace v8 #endif // V8_CODEGEN_CODE_COMMENTS_H_