/
githubmirror
/
node
Обзор
Документация
Войти
/
githubmirror
/
node
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
deps/v8/src/interpreter/bytecode-decoder.h
57 строк
2 KB
Michaël Zasso
deps: update V8 to 14.6.202.33
24 апр 2026, 19:01
Не верифицирован
24 апр 2026, 19:01
f1e0b83
Код
Авторство
О чём код?
// Copyright 2015 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_INTERPRETER_BYTECODE_DECODER_H_ #define V8_INTERPRETER_BYTECODE_DECODER_H_ #include <iosfwd> #include "src/interpreter/bytecode-register.h" namespace v8 { namespace internal { class TrustedFixedArray; namespace interpreter { class V8_EXPORT_PRIVATE BytecodeDecoder final { public: // Decodes a register operand in a byte array. static Register DecodeRegisterOperand(Address operand_start, OperandType operand_type, OperandScale operand_scale); // Decodes a register list operand in a byte array. static RegisterList DecodeRegisterListOperand(Address operand_start, uint32_t count, OperandType operand_type, OperandScale operand_scale); // Decodes a signed operand in a byte array. static int32_t DecodeSignedOperand(Address operand_start, OperandType operand_type, OperandScale operand_scale); // Decodes an unsigned operand in a byte array. static uint32_t DecodeUnsignedOperand(Address operand_start, OperandType operand_type, OperandScale operand_scale); // Separate function for racy embedded feedback value read, so that we can // explicitly suppress TSAN check. Concurrent compilers promise that // this race is benign (as the worst-case outcome is a deoptimization). static uint32_t RacyDecodeEmbeddedFeedback(Address operand_start); // Decode a single bytecode and operands to |os|. static std::ostream& Decode(std::ostream& os, const uint8_t* bytecode_start, Tagged<TrustedFixedArray> constant_pool, bool with_hex = true); }; } // namespace interpreter } // namespace internal } // namespace v8 #endif // V8_INTERPRETER_BYTECODE_DECODER_H_