14514f5e3Sopenharmony_ci/* 24514f5e3Sopenharmony_ci * Copyright (c) 2022 Huawei Device Co., Ltd. 34514f5e3Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 44514f5e3Sopenharmony_ci * you may not use this file except in compliance with the License. 54514f5e3Sopenharmony_ci * You may obtain a copy of the License at 64514f5e3Sopenharmony_ci * 74514f5e3Sopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 84514f5e3Sopenharmony_ci * 94514f5e3Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software 104514f5e3Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 114514f5e3Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 124514f5e3Sopenharmony_ci * See the License for the specific language governing permissions and 134514f5e3Sopenharmony_ci * limitations under the License. 144514f5e3Sopenharmony_ci */ 154514f5e3Sopenharmony_ci 164514f5e3Sopenharmony_ci#ifndef ECMASCRIPT_JSPANDAFILE_BYTECODE_INST_OLD_INSTRUCTION_H 174514f5e3Sopenharmony_ci#define ECMASCRIPT_JSPANDAFILE_BYTECODE_INST_OLD_INSTRUCTION_H 184514f5e3Sopenharmony_ci 194514f5e3Sopenharmony_ci#include "ecmascript/jspandafile/bytecode_inst/instruction.h" 204514f5e3Sopenharmony_ci 214514f5e3Sopenharmony_cinamespace panda::ecmascript { 224514f5e3Sopenharmony_ciclass OldBytecodeInst : OldBytecodeInstBase { 234514f5e3Sopenharmony_cipublic: 244514f5e3Sopenharmony_ci#include "ecmascript/jspandafile/bytecode_inst/old_instruction_enum.h" 254514f5e3Sopenharmony_ci 264514f5e3Sopenharmony_ci explicit OldBytecodeInst(const uint8_t *pc) : OldBytecodeInstBase {pc} 274514f5e3Sopenharmony_ci { 284514f5e3Sopenharmony_ci } 294514f5e3Sopenharmony_ci 304514f5e3Sopenharmony_ci inline typename OldBytecodeInst::Opcode GetOpcode() const 314514f5e3Sopenharmony_ci { 324514f5e3Sopenharmony_ci uint8_t primary = ReadByte(0); 334514f5e3Sopenharmony_ci if (primary >= 236) { // 236: second level bytecode index 344514f5e3Sopenharmony_ci uint8_t secondary = ReadByte(1); 354514f5e3Sopenharmony_ci return static_cast<Opcode>((secondary << 8U) | primary); 364514f5e3Sopenharmony_ci } 374514f5e3Sopenharmony_ci return static_cast<Opcode>(primary); 384514f5e3Sopenharmony_ci } 394514f5e3Sopenharmony_ci 404514f5e3Sopenharmony_ci OldBytecodeInst JumpTo(int32_t offset) const 414514f5e3Sopenharmony_ci { 424514f5e3Sopenharmony_ci return OldBytecodeInst(OldBytecodeInstBase::GetPointer(offset)); 434514f5e3Sopenharmony_ci } 444514f5e3Sopenharmony_ci 454514f5e3Sopenharmony_ci OldBytecodeInst GetNext() const 464514f5e3Sopenharmony_ci { 474514f5e3Sopenharmony_ci return JumpTo(GetSize()); 484514f5e3Sopenharmony_ci } 494514f5e3Sopenharmony_ci 504514f5e3Sopenharmony_ci const uint8_t *GetAddress() const 514514f5e3Sopenharmony_ci { 524514f5e3Sopenharmony_ci return OldBytecodeInstBase::GetAddress(); 534514f5e3Sopenharmony_ci } 544514f5e3Sopenharmony_ci 554514f5e3Sopenharmony_ci size_t GetSize() const 564514f5e3Sopenharmony_ci { 574514f5e3Sopenharmony_ci return Size(GetFormat(GetOpcode())); 584514f5e3Sopenharmony_ci } 594514f5e3Sopenharmony_ci 604514f5e3Sopenharmony_ci uint32_t GetId() const 614514f5e3Sopenharmony_ci { 624514f5e3Sopenharmony_ci Format format = GetFormat(GetOpcode()); 634514f5e3Sopenharmony_ci if (format == Format::ID16) { 644514f5e3Sopenharmony_ci return static_cast<uint32_t>(Read<8, 16>()); 654514f5e3Sopenharmony_ci } 664514f5e3Sopenharmony_ci if (format == Format::ID32) { 674514f5e3Sopenharmony_ci return static_cast<uint32_t>(Read<8, 32>()); 684514f5e3Sopenharmony_ci } 694514f5e3Sopenharmony_ci if (format == Format::PREF_ID16_IMM16_IMM16_V8_V8) { 704514f5e3Sopenharmony_ci return static_cast<uint32_t>(Read<16, 16>()); 714514f5e3Sopenharmony_ci } 724514f5e3Sopenharmony_ci if (format == Format::PREF_ID16_IMM16_V8) { 734514f5e3Sopenharmony_ci return static_cast<uint32_t>(Read<16, 16>()); 744514f5e3Sopenharmony_ci } 754514f5e3Sopenharmony_ci if (format == Format::PREF_ID32) { 764514f5e3Sopenharmony_ci return static_cast<uint32_t>(Read<16, 32>()); 774514f5e3Sopenharmony_ci } 784514f5e3Sopenharmony_ci if (format == Format::PREF_ID32_IMM8) { 794514f5e3Sopenharmony_ci return static_cast<uint32_t>(Read<16, 32>()); 804514f5e3Sopenharmony_ci } 814514f5e3Sopenharmony_ci if (format == Format::PREF_ID32_V8) { 824514f5e3Sopenharmony_ci return static_cast<uint32_t>(Read<16, 32>()); 834514f5e3Sopenharmony_ci } 844514f5e3Sopenharmony_ci if (format == Format::V4_IMM4_ID16) { 854514f5e3Sopenharmony_ci return static_cast<uint32_t>(Read<16, 16>()); 864514f5e3Sopenharmony_ci } 874514f5e3Sopenharmony_ci if (format == Format::V4_V4_ID16) { 884514f5e3Sopenharmony_ci return static_cast<uint32_t>(Read<16, 16>()); 894514f5e3Sopenharmony_ci } 904514f5e3Sopenharmony_ci if (format == Format::V4_V4_V4_IMM4_ID16) { 914514f5e3Sopenharmony_ci return static_cast<uint32_t>(Read<24, 16>()); 924514f5e3Sopenharmony_ci } 934514f5e3Sopenharmony_ci if (format == Format::V4_V4_V4_V4_ID16) { 944514f5e3Sopenharmony_ci return static_cast<uint32_t>(Read<24, 16>()); 954514f5e3Sopenharmony_ci } 964514f5e3Sopenharmony_ci if (format == Format::V8_ID16) { 974514f5e3Sopenharmony_ci return static_cast<uint32_t>(Read<16, 16>()); 984514f5e3Sopenharmony_ci } 994514f5e3Sopenharmony_ci if (format == Format::V8_ID32) { 1004514f5e3Sopenharmony_ci return static_cast<uint32_t>(Read<16, 32>()); 1014514f5e3Sopenharmony_ci } 1024514f5e3Sopenharmony_ci LOG_ECMA(FATAL) << "this branch is unreachable"; 1034514f5e3Sopenharmony_ci UNREACHABLE(); 1044514f5e3Sopenharmony_ci } 1054514f5e3Sopenharmony_ci 1064514f5e3Sopenharmony_ci template <Format format, size_t idx = 0> 1074514f5e3Sopenharmony_ci auto GetImm() const 1084514f5e3Sopenharmony_ci { 1094514f5e3Sopenharmony_ci if constexpr (format == Format::IMM16) { 1104514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> OFFSETS{8}; 1114514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> WIDTHS{16}; 1124514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 1134514f5e3Sopenharmony_ci } 1144514f5e3Sopenharmony_ci if constexpr (format == Format::IMM16_V16) { 1154514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> OFFSETS{8}; 1164514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> WIDTHS{16}; 1174514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 1184514f5e3Sopenharmony_ci } 1194514f5e3Sopenharmony_ci if constexpr (format == Format::IMM32) { 1204514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> OFFSETS{8}; 1214514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> WIDTHS{32}; 1224514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 1234514f5e3Sopenharmony_ci } 1244514f5e3Sopenharmony_ci if constexpr (format == Format::IMM4_V4_V4_V4) { 1254514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> OFFSETS{8}; 1264514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> WIDTHS{4}; 1274514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 1284514f5e3Sopenharmony_ci } 1294514f5e3Sopenharmony_ci if constexpr (format == Format::IMM4_V4_V4_V4_V4_V4) { 1304514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> OFFSETS{8}; 1314514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> WIDTHS{4}; 1324514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 1334514f5e3Sopenharmony_ci } 1344514f5e3Sopenharmony_ci if constexpr (format == Format::IMM64) { 1354514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> OFFSETS{8}; 1364514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> WIDTHS{64}; 1374514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 1384514f5e3Sopenharmony_ci } 1394514f5e3Sopenharmony_ci if constexpr (format == Format::IMM8) { 1404514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> OFFSETS{8}; 1414514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> WIDTHS{8}; 1424514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 1434514f5e3Sopenharmony_ci } 1444514f5e3Sopenharmony_ci if constexpr (format == Format::PREF_ID16_IMM16_IMM16_V8_V8) { 1454514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 2> OFFSETS{32, 48}; 1464514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 2> WIDTHS{16, 16}; 1474514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 1484514f5e3Sopenharmony_ci } 1494514f5e3Sopenharmony_ci if constexpr (format == Format::PREF_ID16_IMM16_V8) { 1504514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> OFFSETS{32}; 1514514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> WIDTHS{16}; 1524514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 1534514f5e3Sopenharmony_ci } 1544514f5e3Sopenharmony_ci if constexpr (format == Format::PREF_ID32_IMM8) { 1554514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> OFFSETS{48}; 1564514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> WIDTHS{8}; 1574514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 1584514f5e3Sopenharmony_ci } 1594514f5e3Sopenharmony_ci if constexpr (format == Format::PREF_IMM16) { 1604514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> OFFSETS{16}; 1614514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> WIDTHS{16}; 1624514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 1634514f5e3Sopenharmony_ci } 1644514f5e3Sopenharmony_ci if constexpr (format == Format::PREF_IMM16_IMM16) { 1654514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 2> OFFSETS{16, 32}; 1664514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 2> WIDTHS{16, 16}; 1674514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 1684514f5e3Sopenharmony_ci } 1694514f5e3Sopenharmony_ci if constexpr (format == Format::PREF_IMM16_IMM16_V8) { 1704514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 2> OFFSETS{16, 32}; 1714514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 2> WIDTHS{16, 16}; 1724514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 1734514f5e3Sopenharmony_ci } 1744514f5e3Sopenharmony_ci if constexpr (format == Format::PREF_IMM16_V8) { 1754514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> OFFSETS{16}; 1764514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> WIDTHS{16}; 1774514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 1784514f5e3Sopenharmony_ci } 1794514f5e3Sopenharmony_ci if constexpr (format == Format::PREF_IMM16_V8_V8) { 1804514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> OFFSETS{16}; 1814514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> WIDTHS{16}; 1824514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 1834514f5e3Sopenharmony_ci } 1844514f5e3Sopenharmony_ci if constexpr (format == Format::PREF_IMM32) { 1854514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> OFFSETS{16}; 1864514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> WIDTHS{32}; 1874514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 1884514f5e3Sopenharmony_ci } 1894514f5e3Sopenharmony_ci if constexpr (format == Format::PREF_IMM4_IMM4) { 1904514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 2> OFFSETS{16, 20}; 1914514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 2> WIDTHS{4, 4}; 1924514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 1934514f5e3Sopenharmony_ci } 1944514f5e3Sopenharmony_ci if constexpr (format == Format::PREF_IMM4_IMM4_V8) { 1954514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 2> OFFSETS{16, 20}; 1964514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 2> WIDTHS{4, 4}; 1974514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 1984514f5e3Sopenharmony_ci } 1994514f5e3Sopenharmony_ci if constexpr (format == Format::PREF_IMM8_IMM8) { 2004514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 2> OFFSETS{16, 24}; 2014514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 2> WIDTHS{8, 8}; 2024514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 2034514f5e3Sopenharmony_ci } 2044514f5e3Sopenharmony_ci if constexpr (format == Format::PREF_IMM8_IMM8_V8) { 2054514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 2> OFFSETS{16, 24}; 2064514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 2> WIDTHS{8, 8}; 2074514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 2084514f5e3Sopenharmony_ci } 2094514f5e3Sopenharmony_ci if constexpr (format == Format::PREF_V8_IMM32) { 2104514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> OFFSETS{24}; 2114514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> WIDTHS{32}; 2124514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 2134514f5e3Sopenharmony_ci } 2144514f5e3Sopenharmony_ci if constexpr (format == Format::V4_IMM4) { 2154514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> OFFSETS{12}; 2164514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> WIDTHS{4}; 2174514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 2184514f5e3Sopenharmony_ci } 2194514f5e3Sopenharmony_ci if constexpr (format == Format::V4_IMM4_ID16) { 2204514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> OFFSETS{12}; 2214514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> WIDTHS{4}; 2224514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 2234514f5e3Sopenharmony_ci } 2244514f5e3Sopenharmony_ci if constexpr (format == Format::V4_V4_V4_IMM4_ID16) { 2254514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> OFFSETS{20}; 2264514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> WIDTHS{4}; 2274514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 2284514f5e3Sopenharmony_ci } 2294514f5e3Sopenharmony_ci if constexpr (format == Format::V8_IMM16) { 2304514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> OFFSETS{16}; 2314514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> WIDTHS{16}; 2324514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 2334514f5e3Sopenharmony_ci } 2344514f5e3Sopenharmony_ci if constexpr (format == Format::V8_IMM32) { 2354514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> OFFSETS{16}; 2364514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> WIDTHS{32}; 2374514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 2384514f5e3Sopenharmony_ci } 2394514f5e3Sopenharmony_ci if constexpr (format == Format::V8_IMM64) { 2404514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> OFFSETS{16}; 2414514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> WIDTHS{64}; 2424514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 2434514f5e3Sopenharmony_ci } 2444514f5e3Sopenharmony_ci if constexpr (format == Format::V8_IMM8) { 2454514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> OFFSETS{16}; 2464514f5e3Sopenharmony_ci constexpr std::array<uint8_t, 1> WIDTHS{8}; 2474514f5e3Sopenharmony_ci return Read<OFFSETS[idx], WIDTHS[idx], true>(); 2484514f5e3Sopenharmony_ci } 2494514f5e3Sopenharmony_ci LOG_ECMA(FATAL) << "this branch is unreachable"; 2504514f5e3Sopenharmony_ci UNREACHABLE(); 2514514f5e3Sopenharmony_ci } 2524514f5e3Sopenharmony_ci 2534514f5e3Sopenharmony_ci static constexpr size_t Size(Format format) 2544514f5e3Sopenharmony_ci { 2554514f5e3Sopenharmony_ci switch (format) { 2564514f5e3Sopenharmony_ci case Format::ID16: { 2574514f5e3Sopenharmony_ci constexpr size_t SIZE = 3; 2584514f5e3Sopenharmony_ci return SIZE; 2594514f5e3Sopenharmony_ci } 2604514f5e3Sopenharmony_ci case Format::ID32: { 2614514f5e3Sopenharmony_ci constexpr size_t SIZE = 5; 2624514f5e3Sopenharmony_ci return SIZE; 2634514f5e3Sopenharmony_ci } 2644514f5e3Sopenharmony_ci case Format::IMM16: { 2654514f5e3Sopenharmony_ci constexpr size_t SIZE = 3; 2664514f5e3Sopenharmony_ci return SIZE; 2674514f5e3Sopenharmony_ci } 2684514f5e3Sopenharmony_ci case Format::IMM16_V16: { 2694514f5e3Sopenharmony_ci constexpr size_t SIZE = 5; 2704514f5e3Sopenharmony_ci return SIZE; 2714514f5e3Sopenharmony_ci } 2724514f5e3Sopenharmony_ci case Format::IMM32: { 2734514f5e3Sopenharmony_ci constexpr size_t SIZE = 5; 2744514f5e3Sopenharmony_ci return SIZE; 2754514f5e3Sopenharmony_ci } 2764514f5e3Sopenharmony_ci case Format::IMM4_V4_V4_V4: { 2774514f5e3Sopenharmony_ci constexpr size_t SIZE = 3; 2784514f5e3Sopenharmony_ci return SIZE; 2794514f5e3Sopenharmony_ci } 2804514f5e3Sopenharmony_ci case Format::IMM4_V4_V4_V4_V4_V4: { 2814514f5e3Sopenharmony_ci constexpr size_t SIZE = 4; 2824514f5e3Sopenharmony_ci return SIZE; 2834514f5e3Sopenharmony_ci } 2844514f5e3Sopenharmony_ci case Format::IMM64: { 2854514f5e3Sopenharmony_ci constexpr size_t SIZE = 9; 2864514f5e3Sopenharmony_ci return SIZE; 2874514f5e3Sopenharmony_ci } 2884514f5e3Sopenharmony_ci case Format::IMM8: { 2894514f5e3Sopenharmony_ci constexpr size_t SIZE = 2; 2904514f5e3Sopenharmony_ci return SIZE; 2914514f5e3Sopenharmony_ci } 2924514f5e3Sopenharmony_ci case Format::NONE: { 2934514f5e3Sopenharmony_ci constexpr size_t SIZE = 1; 2944514f5e3Sopenharmony_ci return SIZE; 2954514f5e3Sopenharmony_ci } 2964514f5e3Sopenharmony_ci case Format::PREF_ID16_IMM16_IMM16_V8_V8: { 2974514f5e3Sopenharmony_ci constexpr size_t SIZE = 10; 2984514f5e3Sopenharmony_ci return SIZE; 2994514f5e3Sopenharmony_ci } 3004514f5e3Sopenharmony_ci case Format::PREF_ID16_IMM16_V8: { 3014514f5e3Sopenharmony_ci constexpr size_t SIZE = 7; 3024514f5e3Sopenharmony_ci return SIZE; 3034514f5e3Sopenharmony_ci } 3044514f5e3Sopenharmony_ci case Format::PREF_ID32: { 3054514f5e3Sopenharmony_ci constexpr size_t SIZE = 6; 3064514f5e3Sopenharmony_ci return SIZE; 3074514f5e3Sopenharmony_ci } 3084514f5e3Sopenharmony_ci case Format::PREF_ID32_IMM8: { 3094514f5e3Sopenharmony_ci constexpr size_t SIZE = 7; 3104514f5e3Sopenharmony_ci return SIZE; 3114514f5e3Sopenharmony_ci } 3124514f5e3Sopenharmony_ci case Format::PREF_ID32_V8: { 3134514f5e3Sopenharmony_ci constexpr size_t SIZE = 7; 3144514f5e3Sopenharmony_ci return SIZE; 3154514f5e3Sopenharmony_ci } 3164514f5e3Sopenharmony_ci case Format::PREF_IMM16: { 3174514f5e3Sopenharmony_ci constexpr size_t SIZE = 4; 3184514f5e3Sopenharmony_ci return SIZE; 3194514f5e3Sopenharmony_ci } 3204514f5e3Sopenharmony_ci case Format::PREF_IMM16_IMM16: { 3214514f5e3Sopenharmony_ci constexpr size_t SIZE = 6; 3224514f5e3Sopenharmony_ci return SIZE; 3234514f5e3Sopenharmony_ci } 3244514f5e3Sopenharmony_ci case Format::PREF_IMM16_IMM16_V8: { 3254514f5e3Sopenharmony_ci constexpr size_t SIZE = 7; 3264514f5e3Sopenharmony_ci return SIZE; 3274514f5e3Sopenharmony_ci } 3284514f5e3Sopenharmony_ci case Format::PREF_IMM16_V8: { 3294514f5e3Sopenharmony_ci constexpr size_t SIZE = 5; 3304514f5e3Sopenharmony_ci return SIZE; 3314514f5e3Sopenharmony_ci } 3324514f5e3Sopenharmony_ci case Format::PREF_IMM16_V8_V8: { 3334514f5e3Sopenharmony_ci constexpr size_t SIZE = 6; 3344514f5e3Sopenharmony_ci return SIZE; 3354514f5e3Sopenharmony_ci } 3364514f5e3Sopenharmony_ci case Format::PREF_IMM32: { 3374514f5e3Sopenharmony_ci constexpr size_t SIZE = 6; 3384514f5e3Sopenharmony_ci return SIZE; 3394514f5e3Sopenharmony_ci } 3404514f5e3Sopenharmony_ci case Format::PREF_IMM4_IMM4: { 3414514f5e3Sopenharmony_ci constexpr size_t SIZE = 3; 3424514f5e3Sopenharmony_ci return SIZE; 3434514f5e3Sopenharmony_ci } 3444514f5e3Sopenharmony_ci case Format::PREF_IMM4_IMM4_V8: { 3454514f5e3Sopenharmony_ci constexpr size_t SIZE = 4; 3464514f5e3Sopenharmony_ci return SIZE; 3474514f5e3Sopenharmony_ci } 3484514f5e3Sopenharmony_ci case Format::PREF_IMM8_IMM8: { 3494514f5e3Sopenharmony_ci constexpr size_t SIZE = 4; 3504514f5e3Sopenharmony_ci return SIZE; 3514514f5e3Sopenharmony_ci } 3524514f5e3Sopenharmony_ci case Format::PREF_IMM8_IMM8_V8: { 3534514f5e3Sopenharmony_ci constexpr size_t SIZE = 5; 3544514f5e3Sopenharmony_ci return SIZE; 3554514f5e3Sopenharmony_ci } 3564514f5e3Sopenharmony_ci case Format::PREF_NONE: { 3574514f5e3Sopenharmony_ci constexpr size_t SIZE = 2; 3584514f5e3Sopenharmony_ci return SIZE; 3594514f5e3Sopenharmony_ci } 3604514f5e3Sopenharmony_ci case Format::PREF_V4_V4: { 3614514f5e3Sopenharmony_ci constexpr size_t SIZE = 3; 3624514f5e3Sopenharmony_ci return SIZE; 3634514f5e3Sopenharmony_ci } 3644514f5e3Sopenharmony_ci case Format::PREF_V8: { 3654514f5e3Sopenharmony_ci constexpr size_t SIZE = 3; 3664514f5e3Sopenharmony_ci return SIZE; 3674514f5e3Sopenharmony_ci } 3684514f5e3Sopenharmony_ci case Format::PREF_V8_IMM32: { 3694514f5e3Sopenharmony_ci constexpr size_t SIZE = 7; 3704514f5e3Sopenharmony_ci return SIZE; 3714514f5e3Sopenharmony_ci } 3724514f5e3Sopenharmony_ci case Format::PREF_V8_V8: { 3734514f5e3Sopenharmony_ci constexpr size_t SIZE = 4; 3744514f5e3Sopenharmony_ci return SIZE; 3754514f5e3Sopenharmony_ci } 3764514f5e3Sopenharmony_ci case Format::PREF_V8_V8_V8: { 3774514f5e3Sopenharmony_ci constexpr size_t SIZE = 5; 3784514f5e3Sopenharmony_ci return SIZE; 3794514f5e3Sopenharmony_ci } 3804514f5e3Sopenharmony_ci case Format::PREF_V8_V8_V8_V8: { 3814514f5e3Sopenharmony_ci constexpr size_t SIZE = 6; 3824514f5e3Sopenharmony_ci return SIZE; 3834514f5e3Sopenharmony_ci } 3844514f5e3Sopenharmony_ci case Format::V16_V16: { 3854514f5e3Sopenharmony_ci constexpr size_t SIZE = 5; 3864514f5e3Sopenharmony_ci return SIZE; 3874514f5e3Sopenharmony_ci } 3884514f5e3Sopenharmony_ci case Format::V4_IMM4: { 3894514f5e3Sopenharmony_ci constexpr size_t SIZE = 2; 3904514f5e3Sopenharmony_ci return SIZE; 3914514f5e3Sopenharmony_ci } 3924514f5e3Sopenharmony_ci case Format::V4_IMM4_ID16: { 3934514f5e3Sopenharmony_ci constexpr size_t SIZE = 4; 3944514f5e3Sopenharmony_ci return SIZE; 3954514f5e3Sopenharmony_ci } 3964514f5e3Sopenharmony_ci case Format::V4_V4: { 3974514f5e3Sopenharmony_ci constexpr size_t SIZE = 2; 3984514f5e3Sopenharmony_ci return SIZE; 3994514f5e3Sopenharmony_ci } 4004514f5e3Sopenharmony_ci case Format::V4_V4_ID16: { 4014514f5e3Sopenharmony_ci constexpr size_t SIZE = 4; 4024514f5e3Sopenharmony_ci return SIZE; 4034514f5e3Sopenharmony_ci } 4044514f5e3Sopenharmony_ci case Format::V4_V4_V4_IMM4_ID16: { 4054514f5e3Sopenharmony_ci constexpr size_t SIZE = 5; 4064514f5e3Sopenharmony_ci return SIZE; 4074514f5e3Sopenharmony_ci } 4084514f5e3Sopenharmony_ci case Format::V4_V4_V4_V4_ID16: { 4094514f5e3Sopenharmony_ci constexpr size_t SIZE = 5; 4104514f5e3Sopenharmony_ci return SIZE; 4114514f5e3Sopenharmony_ci } 4124514f5e3Sopenharmony_ci case Format::V8: { 4134514f5e3Sopenharmony_ci constexpr size_t SIZE = 2; 4144514f5e3Sopenharmony_ci return SIZE; 4154514f5e3Sopenharmony_ci } 4164514f5e3Sopenharmony_ci case Format::V8_ID16: { 4174514f5e3Sopenharmony_ci constexpr size_t SIZE = 4; 4184514f5e3Sopenharmony_ci return SIZE; 4194514f5e3Sopenharmony_ci } 4204514f5e3Sopenharmony_ci case Format::V8_ID32: { 4214514f5e3Sopenharmony_ci constexpr size_t SIZE = 6; 4224514f5e3Sopenharmony_ci return SIZE; 4234514f5e3Sopenharmony_ci } 4244514f5e3Sopenharmony_ci case Format::V8_IMM16: { 4254514f5e3Sopenharmony_ci constexpr size_t SIZE = 4; 4264514f5e3Sopenharmony_ci return SIZE; 4274514f5e3Sopenharmony_ci } 4284514f5e3Sopenharmony_ci case Format::V8_IMM32: { 4294514f5e3Sopenharmony_ci constexpr size_t SIZE = 6; 4304514f5e3Sopenharmony_ci return SIZE; 4314514f5e3Sopenharmony_ci } 4324514f5e3Sopenharmony_ci case Format::V8_IMM64: { 4334514f5e3Sopenharmony_ci constexpr size_t SIZE = 10; 4344514f5e3Sopenharmony_ci return SIZE; 4354514f5e3Sopenharmony_ci } 4364514f5e3Sopenharmony_ci case Format::V8_IMM8: { 4374514f5e3Sopenharmony_ci constexpr size_t SIZE = 3; 4384514f5e3Sopenharmony_ci return SIZE; 4394514f5e3Sopenharmony_ci } 4404514f5e3Sopenharmony_ci case Format::V8_V8: { 4414514f5e3Sopenharmony_ci constexpr size_t SIZE = 3; 4424514f5e3Sopenharmony_ci return SIZE; 4434514f5e3Sopenharmony_ci } 4444514f5e3Sopenharmony_ci default: 4454514f5e3Sopenharmony_ci LOG_ECMA(FATAL) << "this branch is unreachable"; 4464514f5e3Sopenharmony_ci UNREACHABLE(); 4474514f5e3Sopenharmony_ci } 4484514f5e3Sopenharmony_ci } 4494514f5e3Sopenharmony_ci 4504514f5e3Sopenharmony_ci static constexpr Format GetFormat(Opcode opcode) 4514514f5e3Sopenharmony_ci { 4524514f5e3Sopenharmony_ci switch (opcode) { 4534514f5e3Sopenharmony_ci case Opcode::NOP: 4544514f5e3Sopenharmony_ci return Format::NONE; 4554514f5e3Sopenharmony_ci case Opcode::MOV_V4_V4: 4564514f5e3Sopenharmony_ci return Format::V4_V4; 4574514f5e3Sopenharmony_ci case Opcode::MOV_V8_V8: 4584514f5e3Sopenharmony_ci return Format::V8_V8; 4594514f5e3Sopenharmony_ci case Opcode::MOV_V16_V16: 4604514f5e3Sopenharmony_ci return Format::V16_V16; 4614514f5e3Sopenharmony_ci case Opcode::MOV_64_V4_V4: 4624514f5e3Sopenharmony_ci return Format::V4_V4; 4634514f5e3Sopenharmony_ci case Opcode::MOV_64_V16_V16: 4644514f5e3Sopenharmony_ci return Format::V16_V16; 4654514f5e3Sopenharmony_ci case Opcode::MOV_OBJ_V4_V4: 4664514f5e3Sopenharmony_ci return Format::V4_V4; 4674514f5e3Sopenharmony_ci case Opcode::MOV_OBJ_V8_V8: 4684514f5e3Sopenharmony_ci return Format::V8_V8; 4694514f5e3Sopenharmony_ci case Opcode::MOV_OBJ_V16_V16: 4704514f5e3Sopenharmony_ci return Format::V16_V16; 4714514f5e3Sopenharmony_ci case Opcode::MOVI_V4_IMM4: 4724514f5e3Sopenharmony_ci return Format::V4_IMM4; 4734514f5e3Sopenharmony_ci case Opcode::MOVI_V8_IMM8: 4744514f5e3Sopenharmony_ci return Format::V8_IMM8; 4754514f5e3Sopenharmony_ci case Opcode::MOVI_V8_IMM16: 4764514f5e3Sopenharmony_ci return Format::V8_IMM16; 4774514f5e3Sopenharmony_ci case Opcode::MOVI_V8_IMM32: 4784514f5e3Sopenharmony_ci return Format::V8_IMM32; 4794514f5e3Sopenharmony_ci case Opcode::MOVI_64_V8_IMM64: 4804514f5e3Sopenharmony_ci return Format::V8_IMM64; 4814514f5e3Sopenharmony_ci case Opcode::FMOVI_64_V8_IMM64: 4824514f5e3Sopenharmony_ci return Format::V8_IMM64; 4834514f5e3Sopenharmony_ci case Opcode::MOV_NULL_V8: 4844514f5e3Sopenharmony_ci return Format::V8; 4854514f5e3Sopenharmony_ci case Opcode::LDA_V8: 4864514f5e3Sopenharmony_ci return Format::V8; 4874514f5e3Sopenharmony_ci case Opcode::LDA_64_V8: 4884514f5e3Sopenharmony_ci return Format::V8; 4894514f5e3Sopenharmony_ci case Opcode::LDA_OBJ_V8: 4904514f5e3Sopenharmony_ci return Format::V8; 4914514f5e3Sopenharmony_ci case Opcode::LDAI_IMM8: 4924514f5e3Sopenharmony_ci return Format::IMM8; 4934514f5e3Sopenharmony_ci case Opcode::LDAI_IMM16: 4944514f5e3Sopenharmony_ci return Format::IMM16; 4954514f5e3Sopenharmony_ci case Opcode::LDAI_IMM32: 4964514f5e3Sopenharmony_ci return Format::IMM32; 4974514f5e3Sopenharmony_ci case Opcode::LDAI_64_IMM64: 4984514f5e3Sopenharmony_ci return Format::IMM64; 4994514f5e3Sopenharmony_ci case Opcode::FLDAI_64_IMM64: 5004514f5e3Sopenharmony_ci return Format::IMM64; 5014514f5e3Sopenharmony_ci case Opcode::LDA_STR_ID32: 5024514f5e3Sopenharmony_ci return Format::ID32; 5034514f5e3Sopenharmony_ci case Opcode::LDA_CONST_V8_ID32: 5044514f5e3Sopenharmony_ci return Format::V8_ID32; 5054514f5e3Sopenharmony_ci case Opcode::LDA_TYPE_ID16: 5064514f5e3Sopenharmony_ci return Format::ID16; 5074514f5e3Sopenharmony_ci case Opcode::LDA_NULL: 5084514f5e3Sopenharmony_ci return Format::NONE; 5094514f5e3Sopenharmony_ci case Opcode::STA_V8: 5104514f5e3Sopenharmony_ci return Format::V8; 5114514f5e3Sopenharmony_ci case Opcode::STA_64_V8: 5124514f5e3Sopenharmony_ci return Format::V8; 5134514f5e3Sopenharmony_ci case Opcode::STA_OBJ_V8: 5144514f5e3Sopenharmony_ci return Format::V8; 5154514f5e3Sopenharmony_ci case Opcode::CMP_64_V8: 5164514f5e3Sopenharmony_ci return Format::V8; 5174514f5e3Sopenharmony_ci case Opcode::FCMPL_64_V8: 5184514f5e3Sopenharmony_ci return Format::V8; 5194514f5e3Sopenharmony_ci case Opcode::FCMPG_64_V8: 5204514f5e3Sopenharmony_ci return Format::V8; 5214514f5e3Sopenharmony_ci case Opcode::JMP_IMM8: 5224514f5e3Sopenharmony_ci return Format::IMM8; 5234514f5e3Sopenharmony_ci case Opcode::JMP_IMM16: 5244514f5e3Sopenharmony_ci return Format::IMM16; 5254514f5e3Sopenharmony_ci case Opcode::JMP_IMM32: 5264514f5e3Sopenharmony_ci return Format::IMM32; 5274514f5e3Sopenharmony_ci case Opcode::JEQ_OBJ_V8_IMM8: 5284514f5e3Sopenharmony_ci return Format::V8_IMM8; 5294514f5e3Sopenharmony_ci case Opcode::JEQ_OBJ_V8_IMM16: 5304514f5e3Sopenharmony_ci return Format::V8_IMM16; 5314514f5e3Sopenharmony_ci case Opcode::JNE_OBJ_V8_IMM8: 5324514f5e3Sopenharmony_ci return Format::V8_IMM8; 5334514f5e3Sopenharmony_ci case Opcode::JNE_OBJ_V8_IMM16: 5344514f5e3Sopenharmony_ci return Format::V8_IMM16; 5354514f5e3Sopenharmony_ci case Opcode::JEQZ_OBJ_IMM8: 5364514f5e3Sopenharmony_ci return Format::IMM8; 5374514f5e3Sopenharmony_ci case Opcode::JEQZ_OBJ_IMM16: 5384514f5e3Sopenharmony_ci return Format::IMM16; 5394514f5e3Sopenharmony_ci case Opcode::JNEZ_OBJ_IMM8: 5404514f5e3Sopenharmony_ci return Format::IMM8; 5414514f5e3Sopenharmony_ci case Opcode::JNEZ_OBJ_IMM16: 5424514f5e3Sopenharmony_ci return Format::IMM16; 5434514f5e3Sopenharmony_ci case Opcode::JEQZ_IMM8: 5444514f5e3Sopenharmony_ci return Format::IMM8; 5454514f5e3Sopenharmony_ci case Opcode::JEQZ_IMM16: 5464514f5e3Sopenharmony_ci return Format::IMM16; 5474514f5e3Sopenharmony_ci case Opcode::JNEZ_IMM8: 5484514f5e3Sopenharmony_ci return Format::IMM8; 5494514f5e3Sopenharmony_ci case Opcode::JNEZ_IMM16: 5504514f5e3Sopenharmony_ci return Format::IMM16; 5514514f5e3Sopenharmony_ci case Opcode::JLTZ_IMM8: 5524514f5e3Sopenharmony_ci return Format::IMM8; 5534514f5e3Sopenharmony_ci case Opcode::JLTZ_IMM16: 5544514f5e3Sopenharmony_ci return Format::IMM16; 5554514f5e3Sopenharmony_ci case Opcode::JGTZ_IMM8: 5564514f5e3Sopenharmony_ci return Format::IMM8; 5574514f5e3Sopenharmony_ci case Opcode::JGTZ_IMM16: 5584514f5e3Sopenharmony_ci return Format::IMM16; 5594514f5e3Sopenharmony_ci case Opcode::JLEZ_IMM8: 5604514f5e3Sopenharmony_ci return Format::IMM8; 5614514f5e3Sopenharmony_ci case Opcode::JLEZ_IMM16: 5624514f5e3Sopenharmony_ci return Format::IMM16; 5634514f5e3Sopenharmony_ci case Opcode::JGEZ_IMM8: 5644514f5e3Sopenharmony_ci return Format::IMM8; 5654514f5e3Sopenharmony_ci case Opcode::JGEZ_IMM16: 5664514f5e3Sopenharmony_ci return Format::IMM16; 5674514f5e3Sopenharmony_ci case Opcode::JEQ_V8_IMM8: 5684514f5e3Sopenharmony_ci return Format::V8_IMM8; 5694514f5e3Sopenharmony_ci case Opcode::JEQ_V8_IMM16: 5704514f5e3Sopenharmony_ci return Format::V8_IMM16; 5714514f5e3Sopenharmony_ci case Opcode::JNE_V8_IMM8: 5724514f5e3Sopenharmony_ci return Format::V8_IMM8; 5734514f5e3Sopenharmony_ci case Opcode::JNE_V8_IMM16: 5744514f5e3Sopenharmony_ci return Format::V8_IMM16; 5754514f5e3Sopenharmony_ci case Opcode::JLT_V8_IMM8: 5764514f5e3Sopenharmony_ci return Format::V8_IMM8; 5774514f5e3Sopenharmony_ci case Opcode::JLT_V8_IMM16: 5784514f5e3Sopenharmony_ci return Format::V8_IMM16; 5794514f5e3Sopenharmony_ci case Opcode::JGT_V8_IMM8: 5804514f5e3Sopenharmony_ci return Format::V8_IMM8; 5814514f5e3Sopenharmony_ci case Opcode::JGT_V8_IMM16: 5824514f5e3Sopenharmony_ci return Format::V8_IMM16; 5834514f5e3Sopenharmony_ci case Opcode::JLE_V8_IMM8: 5844514f5e3Sopenharmony_ci return Format::V8_IMM8; 5854514f5e3Sopenharmony_ci case Opcode::JLE_V8_IMM16: 5864514f5e3Sopenharmony_ci return Format::V8_IMM16; 5874514f5e3Sopenharmony_ci case Opcode::JGE_V8_IMM8: 5884514f5e3Sopenharmony_ci return Format::V8_IMM8; 5894514f5e3Sopenharmony_ci case Opcode::JGE_V8_IMM16: 5904514f5e3Sopenharmony_ci return Format::V8_IMM16; 5914514f5e3Sopenharmony_ci case Opcode::FNEG_64: 5924514f5e3Sopenharmony_ci return Format::NONE; 5934514f5e3Sopenharmony_ci case Opcode::NEG: 5944514f5e3Sopenharmony_ci return Format::NONE; 5954514f5e3Sopenharmony_ci case Opcode::NEG_64: 5964514f5e3Sopenharmony_ci return Format::NONE; 5974514f5e3Sopenharmony_ci case Opcode::ADD2_V8: 5984514f5e3Sopenharmony_ci return Format::V8; 5994514f5e3Sopenharmony_ci case Opcode::ADD2_64_V8: 6004514f5e3Sopenharmony_ci return Format::V8; 6014514f5e3Sopenharmony_ci case Opcode::SUB2_V8: 6024514f5e3Sopenharmony_ci return Format::V8; 6034514f5e3Sopenharmony_ci case Opcode::SUB2_64_V8: 6044514f5e3Sopenharmony_ci return Format::V8; 6054514f5e3Sopenharmony_ci case Opcode::MUL2_V8: 6064514f5e3Sopenharmony_ci return Format::V8; 6074514f5e3Sopenharmony_ci case Opcode::MUL2_64_V8: 6084514f5e3Sopenharmony_ci return Format::V8; 6094514f5e3Sopenharmony_ci case Opcode::FADD2_64_V8: 6104514f5e3Sopenharmony_ci return Format::V8; 6114514f5e3Sopenharmony_ci case Opcode::FSUB2_64_V8: 6124514f5e3Sopenharmony_ci return Format::V8; 6134514f5e3Sopenharmony_ci case Opcode::FMUL2_64_V8: 6144514f5e3Sopenharmony_ci return Format::V8; 6154514f5e3Sopenharmony_ci case Opcode::FDIV2_64_V8: 6164514f5e3Sopenharmony_ci return Format::V8; 6174514f5e3Sopenharmony_ci case Opcode::FMOD2_64_V8: 6184514f5e3Sopenharmony_ci return Format::V8; 6194514f5e3Sopenharmony_ci case Opcode::DIV2_V8: 6204514f5e3Sopenharmony_ci return Format::V8; 6214514f5e3Sopenharmony_ci case Opcode::DIV2_64_V8: 6224514f5e3Sopenharmony_ci return Format::V8; 6234514f5e3Sopenharmony_ci case Opcode::MOD2_V8: 6244514f5e3Sopenharmony_ci return Format::V8; 6254514f5e3Sopenharmony_ci case Opcode::MOD2_64_V8: 6264514f5e3Sopenharmony_ci return Format::V8; 6274514f5e3Sopenharmony_ci case Opcode::ADDI_IMM8: 6284514f5e3Sopenharmony_ci return Format::IMM8; 6294514f5e3Sopenharmony_ci case Opcode::SUBI_IMM8: 6304514f5e3Sopenharmony_ci return Format::IMM8; 6314514f5e3Sopenharmony_ci case Opcode::MULI_IMM8: 6324514f5e3Sopenharmony_ci return Format::IMM8; 6334514f5e3Sopenharmony_ci case Opcode::ANDI_IMM32: 6344514f5e3Sopenharmony_ci return Format::IMM32; 6354514f5e3Sopenharmony_ci case Opcode::ORI_IMM32: 6364514f5e3Sopenharmony_ci return Format::IMM32; 6374514f5e3Sopenharmony_ci case Opcode::SHLI_IMM8: 6384514f5e3Sopenharmony_ci return Format::IMM8; 6394514f5e3Sopenharmony_ci case Opcode::SHRI_IMM8: 6404514f5e3Sopenharmony_ci return Format::IMM8; 6414514f5e3Sopenharmony_ci case Opcode::ASHRI_IMM8: 6424514f5e3Sopenharmony_ci return Format::IMM8; 6434514f5e3Sopenharmony_ci case Opcode::DIVI_IMM8: 6444514f5e3Sopenharmony_ci return Format::IMM8; 6454514f5e3Sopenharmony_ci case Opcode::MODI_IMM8: 6464514f5e3Sopenharmony_ci return Format::IMM8; 6474514f5e3Sopenharmony_ci case Opcode::ADD_V4_V4: 6484514f5e3Sopenharmony_ci return Format::V4_V4; 6494514f5e3Sopenharmony_ci case Opcode::SUB_V4_V4: 6504514f5e3Sopenharmony_ci return Format::V4_V4; 6514514f5e3Sopenharmony_ci case Opcode::MUL_V4_V4: 6524514f5e3Sopenharmony_ci return Format::V4_V4; 6534514f5e3Sopenharmony_ci case Opcode::DIV_V4_V4: 6544514f5e3Sopenharmony_ci return Format::V4_V4; 6554514f5e3Sopenharmony_ci case Opcode::MOD_V4_V4: 6564514f5e3Sopenharmony_ci return Format::V4_V4; 6574514f5e3Sopenharmony_ci case Opcode::INCI_V4_IMM4: 6584514f5e3Sopenharmony_ci return Format::V4_IMM4; 6594514f5e3Sopenharmony_ci case Opcode::LDARR_8_V8: 6604514f5e3Sopenharmony_ci return Format::V8; 6614514f5e3Sopenharmony_ci case Opcode::LDARRU_8_V8: 6624514f5e3Sopenharmony_ci return Format::V8; 6634514f5e3Sopenharmony_ci case Opcode::LDARR_16_V8: 6644514f5e3Sopenharmony_ci return Format::V8; 6654514f5e3Sopenharmony_ci case Opcode::LDARRU_16_V8: 6664514f5e3Sopenharmony_ci return Format::V8; 6674514f5e3Sopenharmony_ci case Opcode::LDARR_V8: 6684514f5e3Sopenharmony_ci return Format::V8; 6694514f5e3Sopenharmony_ci case Opcode::LDARR_64_V8: 6704514f5e3Sopenharmony_ci return Format::V8; 6714514f5e3Sopenharmony_ci case Opcode::FLDARR_32_V8: 6724514f5e3Sopenharmony_ci return Format::V8; 6734514f5e3Sopenharmony_ci case Opcode::FLDARR_64_V8: 6744514f5e3Sopenharmony_ci return Format::V8; 6754514f5e3Sopenharmony_ci case Opcode::LDARR_OBJ_V8: 6764514f5e3Sopenharmony_ci return Format::V8; 6774514f5e3Sopenharmony_ci case Opcode::STARR_8_V4_V4: 6784514f5e3Sopenharmony_ci return Format::V4_V4; 6794514f5e3Sopenharmony_ci case Opcode::STARR_16_V4_V4: 6804514f5e3Sopenharmony_ci return Format::V4_V4; 6814514f5e3Sopenharmony_ci case Opcode::STARR_V4_V4: 6824514f5e3Sopenharmony_ci return Format::V4_V4; 6834514f5e3Sopenharmony_ci case Opcode::STARR_64_V4_V4: 6844514f5e3Sopenharmony_ci return Format::V4_V4; 6854514f5e3Sopenharmony_ci case Opcode::FSTARR_32_V4_V4: 6864514f5e3Sopenharmony_ci return Format::V4_V4; 6874514f5e3Sopenharmony_ci case Opcode::FSTARR_64_V4_V4: 6884514f5e3Sopenharmony_ci return Format::V4_V4; 6894514f5e3Sopenharmony_ci case Opcode::STARR_OBJ_V4_V4: 6904514f5e3Sopenharmony_ci return Format::V4_V4; 6914514f5e3Sopenharmony_ci case Opcode::LENARR_V8: 6924514f5e3Sopenharmony_ci return Format::V8; 6934514f5e3Sopenharmony_ci case Opcode::NEWARR_V4_V4_ID16: 6944514f5e3Sopenharmony_ci return Format::V4_V4_ID16; 6954514f5e3Sopenharmony_ci case Opcode::NEWOBJ_V8_ID16: 6964514f5e3Sopenharmony_ci return Format::V8_ID16; 6974514f5e3Sopenharmony_ci case Opcode::INITOBJ_SHORT_V4_V4_ID16: 6984514f5e3Sopenharmony_ci return Format::V4_V4_ID16; 6994514f5e3Sopenharmony_ci case Opcode::INITOBJ_V4_V4_V4_V4_ID16: 7004514f5e3Sopenharmony_ci return Format::V4_V4_V4_V4_ID16; 7014514f5e3Sopenharmony_ci case Opcode::INITOBJ_RANGE_V8_ID16: 7024514f5e3Sopenharmony_ci return Format::V8_ID16; 7034514f5e3Sopenharmony_ci case Opcode::LDOBJ_V8_ID16: 7044514f5e3Sopenharmony_ci return Format::V8_ID16; 7054514f5e3Sopenharmony_ci case Opcode::LDOBJ_64_V8_ID16: 7064514f5e3Sopenharmony_ci return Format::V8_ID16; 7074514f5e3Sopenharmony_ci case Opcode::LDOBJ_OBJ_V8_ID16: 7084514f5e3Sopenharmony_ci return Format::V8_ID16; 7094514f5e3Sopenharmony_ci case Opcode::STOBJ_V8_ID16: 7104514f5e3Sopenharmony_ci return Format::V8_ID16; 7114514f5e3Sopenharmony_ci case Opcode::STOBJ_64_V8_ID16: 7124514f5e3Sopenharmony_ci return Format::V8_ID16; 7134514f5e3Sopenharmony_ci case Opcode::STOBJ_OBJ_V8_ID16: 7144514f5e3Sopenharmony_ci return Format::V8_ID16; 7154514f5e3Sopenharmony_ci case Opcode::LDOBJ_V_V4_V4_ID16: 7164514f5e3Sopenharmony_ci return Format::V4_V4_ID16; 7174514f5e3Sopenharmony_ci case Opcode::LDOBJ_V_64_V4_V4_ID16: 7184514f5e3Sopenharmony_ci return Format::V4_V4_ID16; 7194514f5e3Sopenharmony_ci case Opcode::LDOBJ_V_OBJ_V4_V4_ID16: 7204514f5e3Sopenharmony_ci return Format::V4_V4_ID16; 7214514f5e3Sopenharmony_ci case Opcode::STOBJ_V_V4_V4_ID16: 7224514f5e3Sopenharmony_ci return Format::V4_V4_ID16; 7234514f5e3Sopenharmony_ci case Opcode::STOBJ_V_64_V4_V4_ID16: 7244514f5e3Sopenharmony_ci return Format::V4_V4_ID16; 7254514f5e3Sopenharmony_ci case Opcode::STOBJ_V_OBJ_V4_V4_ID16: 7264514f5e3Sopenharmony_ci return Format::V4_V4_ID16; 7274514f5e3Sopenharmony_ci case Opcode::LDSTATIC_ID16: 7284514f5e3Sopenharmony_ci return Format::ID16; 7294514f5e3Sopenharmony_ci case Opcode::LDSTATIC_64_ID16: 7304514f5e3Sopenharmony_ci return Format::ID16; 7314514f5e3Sopenharmony_ci case Opcode::LDSTATIC_OBJ_ID16: 7324514f5e3Sopenharmony_ci return Format::ID16; 7334514f5e3Sopenharmony_ci case Opcode::STSTATIC_ID16: 7344514f5e3Sopenharmony_ci return Format::ID16; 7354514f5e3Sopenharmony_ci case Opcode::STSTATIC_64_ID16: 7364514f5e3Sopenharmony_ci return Format::ID16; 7374514f5e3Sopenharmony_ci case Opcode::STSTATIC_OBJ_ID16: 7384514f5e3Sopenharmony_ci return Format::ID16; 7394514f5e3Sopenharmony_ci case Opcode::RETURN: 7404514f5e3Sopenharmony_ci return Format::NONE; 7414514f5e3Sopenharmony_ci case Opcode::RETURN_64: 7424514f5e3Sopenharmony_ci return Format::NONE; 7434514f5e3Sopenharmony_ci case Opcode::RETURN_OBJ: 7444514f5e3Sopenharmony_ci return Format::NONE; 7454514f5e3Sopenharmony_ci case Opcode::RETURN_VOID: 7464514f5e3Sopenharmony_ci return Format::NONE; 7474514f5e3Sopenharmony_ci case Opcode::THROW_V8: 7484514f5e3Sopenharmony_ci return Format::V8; 7494514f5e3Sopenharmony_ci case Opcode::CHECKCAST_ID16: 7504514f5e3Sopenharmony_ci return Format::ID16; 7514514f5e3Sopenharmony_ci case Opcode::ISINSTANCE_ID16: 7524514f5e3Sopenharmony_ci return Format::ID16; 7534514f5e3Sopenharmony_ci case Opcode::CALL_SHORT_V4_V4_ID16: 7544514f5e3Sopenharmony_ci return Format::V4_V4_ID16; 7554514f5e3Sopenharmony_ci case Opcode::CALL_V4_V4_V4_V4_ID16: 7564514f5e3Sopenharmony_ci return Format::V4_V4_V4_V4_ID16; 7574514f5e3Sopenharmony_ci case Opcode::CALL_RANGE_V8_ID16: 7584514f5e3Sopenharmony_ci return Format::V8_ID16; 7594514f5e3Sopenharmony_ci case Opcode::CALL_ACC_SHORT_V4_IMM4_ID16: 7604514f5e3Sopenharmony_ci return Format::V4_IMM4_ID16; 7614514f5e3Sopenharmony_ci case Opcode::CALL_ACC_V4_V4_V4_IMM4_ID16: 7624514f5e3Sopenharmony_ci return Format::V4_V4_V4_IMM4_ID16; 7634514f5e3Sopenharmony_ci case Opcode::CALL_VIRT_SHORT_V4_V4_ID16: 7644514f5e3Sopenharmony_ci return Format::V4_V4_ID16; 7654514f5e3Sopenharmony_ci case Opcode::CALL_VIRT_V4_V4_V4_V4_ID16: 7664514f5e3Sopenharmony_ci return Format::V4_V4_V4_V4_ID16; 7674514f5e3Sopenharmony_ci case Opcode::CALL_VIRT_RANGE_V8_ID16: 7684514f5e3Sopenharmony_ci return Format::V8_ID16; 7694514f5e3Sopenharmony_ci case Opcode::CALL_VIRT_ACC_SHORT_V4_IMM4_ID16: 7704514f5e3Sopenharmony_ci return Format::V4_IMM4_ID16; 7714514f5e3Sopenharmony_ci case Opcode::CALL_VIRT_ACC_V4_V4_V4_IMM4_ID16: 7724514f5e3Sopenharmony_ci return Format::V4_V4_V4_IMM4_ID16; 7734514f5e3Sopenharmony_ci case Opcode::MOV_DYN_V8_V8: 7744514f5e3Sopenharmony_ci return Format::V8_V8; 7754514f5e3Sopenharmony_ci case Opcode::MOV_DYN_V16_V16: 7764514f5e3Sopenharmony_ci return Format::V16_V16; 7774514f5e3Sopenharmony_ci case Opcode::LDA_DYN_V8: 7784514f5e3Sopenharmony_ci return Format::V8; 7794514f5e3Sopenharmony_ci case Opcode::STA_DYN_V8: 7804514f5e3Sopenharmony_ci return Format::V8; 7814514f5e3Sopenharmony_ci case Opcode::LDAI_DYN_IMM32: 7824514f5e3Sopenharmony_ci return Format::IMM32; 7834514f5e3Sopenharmony_ci case Opcode::FLDAI_DYN_IMM64: 7844514f5e3Sopenharmony_ci return Format::IMM64; 7854514f5e3Sopenharmony_ci case Opcode::RETURN_DYN: 7864514f5e3Sopenharmony_ci return Format::NONE; 7874514f5e3Sopenharmony_ci case Opcode::CALLI_DYN_SHORT_IMM4_V4_V4_V4: 7884514f5e3Sopenharmony_ci return Format::IMM4_V4_V4_V4; 7894514f5e3Sopenharmony_ci case Opcode::CALLI_DYN_IMM4_V4_V4_V4_V4_V4: 7904514f5e3Sopenharmony_ci return Format::IMM4_V4_V4_V4_V4_V4; 7914514f5e3Sopenharmony_ci case Opcode::CALLI_DYN_RANGE_IMM16_V16: 7924514f5e3Sopenharmony_ci return Format::IMM16_V16; 7934514f5e3Sopenharmony_ci case Opcode::FMOVI_PREF_V8_IMM32: 7944514f5e3Sopenharmony_ci return Format::PREF_V8_IMM32; 7954514f5e3Sopenharmony_ci case Opcode::I32TOF64_PREF_NONE: 7964514f5e3Sopenharmony_ci return Format::PREF_NONE; 7974514f5e3Sopenharmony_ci case Opcode::UCMP_PREF_V8: 7984514f5e3Sopenharmony_ci return Format::PREF_V8; 7994514f5e3Sopenharmony_ci case Opcode::NOT_PREF_NONE: 8004514f5e3Sopenharmony_ci return Format::PREF_NONE; 8014514f5e3Sopenharmony_ci case Opcode::ECMA_LDNAN_PREF_NONE: 8024514f5e3Sopenharmony_ci return Format::PREF_NONE; 8034514f5e3Sopenharmony_ci case Opcode::FLDAI_PREF_IMM32: 8044514f5e3Sopenharmony_ci return Format::PREF_IMM32; 8054514f5e3Sopenharmony_ci case Opcode::U32TOF64_PREF_NONE: 8064514f5e3Sopenharmony_ci return Format::PREF_NONE; 8074514f5e3Sopenharmony_ci case Opcode::UCMP_64_PREF_V8: 8084514f5e3Sopenharmony_ci return Format::PREF_V8; 8094514f5e3Sopenharmony_ci case Opcode::NOT_64_PREF_NONE: 8104514f5e3Sopenharmony_ci return Format::PREF_NONE; 8114514f5e3Sopenharmony_ci case Opcode::ECMA_LDINFINITY_PREF_NONE: 8124514f5e3Sopenharmony_ci return Format::PREF_NONE; 8134514f5e3Sopenharmony_ci case Opcode::FCMPL_PREF_V8: 8144514f5e3Sopenharmony_ci return Format::PREF_V8; 8154514f5e3Sopenharmony_ci case Opcode::I64TOF64_PREF_NONE: 8164514f5e3Sopenharmony_ci return Format::PREF_NONE; 8174514f5e3Sopenharmony_ci case Opcode::DIVU2_PREF_V8: 8184514f5e3Sopenharmony_ci return Format::PREF_V8; 8194514f5e3Sopenharmony_ci case Opcode::AND2_PREF_V8: 8204514f5e3Sopenharmony_ci return Format::PREF_V8; 8214514f5e3Sopenharmony_ci case Opcode::ECMA_LDGLOBALTHIS_PREF_NONE: 8224514f5e3Sopenharmony_ci return Format::PREF_NONE; 8234514f5e3Sopenharmony_ci case Opcode::FCMPG_PREF_V8: 8244514f5e3Sopenharmony_ci return Format::PREF_V8; 8254514f5e3Sopenharmony_ci case Opcode::U64TOF64_PREF_NONE: 8264514f5e3Sopenharmony_ci return Format::PREF_NONE; 8274514f5e3Sopenharmony_ci case Opcode::DIVU2_64_PREF_V8: 8284514f5e3Sopenharmony_ci return Format::PREF_V8; 8294514f5e3Sopenharmony_ci case Opcode::AND2_64_PREF_V8: 8304514f5e3Sopenharmony_ci return Format::PREF_V8; 8314514f5e3Sopenharmony_ci case Opcode::ECMA_LDUNDEFINED_PREF_NONE: 8324514f5e3Sopenharmony_ci return Format::PREF_NONE; 8334514f5e3Sopenharmony_ci case Opcode::FNEG_PREF_NONE: 8344514f5e3Sopenharmony_ci return Format::PREF_NONE; 8354514f5e3Sopenharmony_ci case Opcode::F64TOI32_PREF_NONE: 8364514f5e3Sopenharmony_ci return Format::PREF_NONE; 8374514f5e3Sopenharmony_ci case Opcode::MODU2_PREF_V8: 8384514f5e3Sopenharmony_ci return Format::PREF_V8; 8394514f5e3Sopenharmony_ci case Opcode::OR2_PREF_V8: 8404514f5e3Sopenharmony_ci return Format::PREF_V8; 8414514f5e3Sopenharmony_ci case Opcode::ECMA_LDNULL_PREF_NONE: 8424514f5e3Sopenharmony_ci return Format::PREF_NONE; 8434514f5e3Sopenharmony_ci case Opcode::FADD2_PREF_V8: 8444514f5e3Sopenharmony_ci return Format::PREF_V8; 8454514f5e3Sopenharmony_ci case Opcode::F64TOI64_PREF_NONE: 8464514f5e3Sopenharmony_ci return Format::PREF_NONE; 8474514f5e3Sopenharmony_ci case Opcode::MODU2_64_PREF_V8: 8484514f5e3Sopenharmony_ci return Format::PREF_V8; 8494514f5e3Sopenharmony_ci case Opcode::OR2_64_PREF_V8: 8504514f5e3Sopenharmony_ci return Format::PREF_V8; 8514514f5e3Sopenharmony_ci case Opcode::ECMA_LDSYMBOL_PREF_NONE: 8524514f5e3Sopenharmony_ci return Format::PREF_NONE; 8534514f5e3Sopenharmony_ci case Opcode::FSUB2_PREF_V8: 8544514f5e3Sopenharmony_ci return Format::PREF_V8; 8554514f5e3Sopenharmony_ci case Opcode::F64TOU32_PREF_NONE: 8564514f5e3Sopenharmony_ci return Format::PREF_NONE; 8574514f5e3Sopenharmony_ci case Opcode::XOR2_PREF_V8: 8584514f5e3Sopenharmony_ci return Format::PREF_V8; 8594514f5e3Sopenharmony_ci case Opcode::ECMA_LDGLOBAL_PREF_NONE: 8604514f5e3Sopenharmony_ci return Format::PREF_NONE; 8614514f5e3Sopenharmony_ci case Opcode::FMUL2_PREF_V8: 8624514f5e3Sopenharmony_ci return Format::PREF_V8; 8634514f5e3Sopenharmony_ci case Opcode::F64TOU64_PREF_NONE: 8644514f5e3Sopenharmony_ci return Format::PREF_NONE; 8654514f5e3Sopenharmony_ci case Opcode::XOR2_64_PREF_V8: 8664514f5e3Sopenharmony_ci return Format::PREF_V8; 8674514f5e3Sopenharmony_ci case Opcode::ECMA_LDTRUE_PREF_NONE: 8684514f5e3Sopenharmony_ci return Format::PREF_NONE; 8694514f5e3Sopenharmony_ci case Opcode::FDIV2_PREF_V8: 8704514f5e3Sopenharmony_ci return Format::PREF_V8; 8714514f5e3Sopenharmony_ci case Opcode::I32TOU1_PREF_NONE: 8724514f5e3Sopenharmony_ci return Format::PREF_NONE; 8734514f5e3Sopenharmony_ci case Opcode::SHL2_PREF_V8: 8744514f5e3Sopenharmony_ci return Format::PREF_V8; 8754514f5e3Sopenharmony_ci case Opcode::ECMA_LDFALSE_PREF_NONE: 8764514f5e3Sopenharmony_ci return Format::PREF_NONE; 8774514f5e3Sopenharmony_ci case Opcode::FMOD2_PREF_V8: 8784514f5e3Sopenharmony_ci return Format::PREF_V8; 8794514f5e3Sopenharmony_ci case Opcode::I64TOU1_PREF_NONE: 8804514f5e3Sopenharmony_ci return Format::PREF_NONE; 8814514f5e3Sopenharmony_ci case Opcode::SHL2_64_PREF_V8: 8824514f5e3Sopenharmony_ci return Format::PREF_V8; 8834514f5e3Sopenharmony_ci case Opcode::ECMA_THROWDYN_PREF_NONE: 8844514f5e3Sopenharmony_ci return Format::PREF_NONE; 8854514f5e3Sopenharmony_ci case Opcode::I32TOF32_PREF_NONE: 8864514f5e3Sopenharmony_ci return Format::PREF_NONE; 8874514f5e3Sopenharmony_ci case Opcode::U32TOU1_PREF_NONE: 8884514f5e3Sopenharmony_ci return Format::PREF_NONE; 8894514f5e3Sopenharmony_ci case Opcode::SHR2_PREF_V8: 8904514f5e3Sopenharmony_ci return Format::PREF_V8; 8914514f5e3Sopenharmony_ci case Opcode::ECMA_TYPEOFDYN_PREF_NONE: 8924514f5e3Sopenharmony_ci return Format::PREF_NONE; 8934514f5e3Sopenharmony_ci case Opcode::U32TOF32_PREF_NONE: 8944514f5e3Sopenharmony_ci return Format::PREF_NONE; 8954514f5e3Sopenharmony_ci case Opcode::U64TOU1_PREF_NONE: 8964514f5e3Sopenharmony_ci return Format::PREF_NONE; 8974514f5e3Sopenharmony_ci case Opcode::SHR2_64_PREF_V8: 8984514f5e3Sopenharmony_ci return Format::PREF_V8; 8994514f5e3Sopenharmony_ci case Opcode::ECMA_LDLEXENVDYN_PREF_NONE: 9004514f5e3Sopenharmony_ci return Format::PREF_NONE; 9014514f5e3Sopenharmony_ci case Opcode::I64TOF32_PREF_NONE: 9024514f5e3Sopenharmony_ci return Format::PREF_NONE; 9034514f5e3Sopenharmony_ci case Opcode::I32TOI64_PREF_NONE: 9044514f5e3Sopenharmony_ci return Format::PREF_NONE; 9054514f5e3Sopenharmony_ci case Opcode::ASHR2_PREF_V8: 9064514f5e3Sopenharmony_ci return Format::PREF_V8; 9074514f5e3Sopenharmony_ci case Opcode::ECMA_POPLEXENVDYN_PREF_NONE: 9084514f5e3Sopenharmony_ci return Format::PREF_NONE; 9094514f5e3Sopenharmony_ci case Opcode::U64TOF32_PREF_NONE: 9104514f5e3Sopenharmony_ci return Format::PREF_NONE; 9114514f5e3Sopenharmony_ci case Opcode::I32TOI16_PREF_NONE: 9124514f5e3Sopenharmony_ci return Format::PREF_NONE; 9134514f5e3Sopenharmony_ci case Opcode::ASHR2_64_PREF_V8: 9144514f5e3Sopenharmony_ci return Format::PREF_V8; 9154514f5e3Sopenharmony_ci case Opcode::ECMA_GETUNMAPPEDARGS_PREF_NONE: 9164514f5e3Sopenharmony_ci return Format::PREF_NONE; 9174514f5e3Sopenharmony_ci case Opcode::F32TOF64_PREF_NONE: 9184514f5e3Sopenharmony_ci return Format::PREF_NONE; 9194514f5e3Sopenharmony_ci case Opcode::I32TOU16_PREF_NONE: 9204514f5e3Sopenharmony_ci return Format::PREF_NONE; 9214514f5e3Sopenharmony_ci case Opcode::XORI_PREF_IMM32: 9224514f5e3Sopenharmony_ci return Format::PREF_IMM32; 9234514f5e3Sopenharmony_ci case Opcode::ECMA_GETPROPITERATOR_PREF_NONE: 9244514f5e3Sopenharmony_ci return Format::PREF_NONE; 9254514f5e3Sopenharmony_ci case Opcode::F32TOI32_PREF_NONE: 9264514f5e3Sopenharmony_ci return Format::PREF_NONE; 9274514f5e3Sopenharmony_ci case Opcode::I32TOI8_PREF_NONE: 9284514f5e3Sopenharmony_ci return Format::PREF_NONE; 9294514f5e3Sopenharmony_ci case Opcode::AND_PREF_V4_V4: 9304514f5e3Sopenharmony_ci return Format::PREF_V4_V4; 9314514f5e3Sopenharmony_ci case Opcode::ECMA_ASYNCFUNCTIONENTER_PREF_NONE: 9324514f5e3Sopenharmony_ci return Format::PREF_NONE; 9334514f5e3Sopenharmony_ci case Opcode::F32TOI64_PREF_NONE: 9344514f5e3Sopenharmony_ci return Format::PREF_NONE; 9354514f5e3Sopenharmony_ci case Opcode::I32TOU8_PREF_NONE: 9364514f5e3Sopenharmony_ci return Format::PREF_NONE; 9374514f5e3Sopenharmony_ci case Opcode::OR_PREF_V4_V4: 9384514f5e3Sopenharmony_ci return Format::PREF_V4_V4; 9394514f5e3Sopenharmony_ci case Opcode::ECMA_LDHOLE_PREF_NONE: 9404514f5e3Sopenharmony_ci return Format::PREF_NONE; 9414514f5e3Sopenharmony_ci case Opcode::F32TOU32_PREF_NONE: 9424514f5e3Sopenharmony_ci return Format::PREF_NONE; 9434514f5e3Sopenharmony_ci case Opcode::I64TOI32_PREF_NONE: 9444514f5e3Sopenharmony_ci return Format::PREF_NONE; 9454514f5e3Sopenharmony_ci case Opcode::XOR_PREF_V4_V4: 9464514f5e3Sopenharmony_ci return Format::PREF_V4_V4; 9474514f5e3Sopenharmony_ci case Opcode::ECMA_RETURNUNDEFINED_PREF_NONE: 9484514f5e3Sopenharmony_ci return Format::PREF_NONE; 9494514f5e3Sopenharmony_ci case Opcode::F32TOU64_PREF_NONE: 9504514f5e3Sopenharmony_ci return Format::PREF_NONE; 9514514f5e3Sopenharmony_ci case Opcode::U32TOI64_PREF_NONE: 9524514f5e3Sopenharmony_ci return Format::PREF_NONE; 9534514f5e3Sopenharmony_ci case Opcode::SHL_PREF_V4_V4: 9544514f5e3Sopenharmony_ci return Format::PREF_V4_V4; 9554514f5e3Sopenharmony_ci case Opcode::ECMA_CREATEEMPTYOBJECT_PREF_NONE: 9564514f5e3Sopenharmony_ci return Format::PREF_NONE; 9574514f5e3Sopenharmony_ci case Opcode::F64TOF32_PREF_NONE: 9584514f5e3Sopenharmony_ci return Format::PREF_NONE; 9594514f5e3Sopenharmony_ci case Opcode::U32TOI16_PREF_NONE: 9604514f5e3Sopenharmony_ci return Format::PREF_NONE; 9614514f5e3Sopenharmony_ci case Opcode::SHR_PREF_V4_V4: 9624514f5e3Sopenharmony_ci return Format::PREF_V4_V4; 9634514f5e3Sopenharmony_ci case Opcode::ECMA_CREATEEMPTYARRAY_PREF_NONE: 9644514f5e3Sopenharmony_ci return Format::PREF_NONE; 9654514f5e3Sopenharmony_ci case Opcode::U32TOU16_PREF_NONE: 9664514f5e3Sopenharmony_ci return Format::PREF_NONE; 9674514f5e3Sopenharmony_ci case Opcode::ASHR_PREF_V4_V4: 9684514f5e3Sopenharmony_ci return Format::PREF_V4_V4; 9694514f5e3Sopenharmony_ci case Opcode::ECMA_GETITERATOR_PREF_NONE: 9704514f5e3Sopenharmony_ci return Format::PREF_NONE; 9714514f5e3Sopenharmony_ci case Opcode::U32TOI8_PREF_NONE: 9724514f5e3Sopenharmony_ci return Format::PREF_NONE; 9734514f5e3Sopenharmony_ci case Opcode::ECMA_THROWTHROWNOTEXISTS_PREF_NONE: 9744514f5e3Sopenharmony_ci return Format::PREF_NONE; 9754514f5e3Sopenharmony_ci case Opcode::U32TOU8_PREF_NONE: 9764514f5e3Sopenharmony_ci return Format::PREF_NONE; 9774514f5e3Sopenharmony_ci case Opcode::ECMA_THROWPATTERNNONCOERCIBLE_PREF_NONE: 9784514f5e3Sopenharmony_ci return Format::PREF_NONE; 9794514f5e3Sopenharmony_ci case Opcode::U64TOI32_PREF_NONE: 9804514f5e3Sopenharmony_ci return Format::PREF_NONE; 9814514f5e3Sopenharmony_ci case Opcode::ECMA_LDHOMEOBJECT_PREF_NONE: 9824514f5e3Sopenharmony_ci return Format::PREF_NONE; 9834514f5e3Sopenharmony_ci case Opcode::U64TOU32_PREF_NONE: 9844514f5e3Sopenharmony_ci return Format::PREF_NONE; 9854514f5e3Sopenharmony_ci case Opcode::ECMA_THROWDELETESUPERPROPERTY_PREF_NONE: 9864514f5e3Sopenharmony_ci return Format::PREF_NONE; 9874514f5e3Sopenharmony_ci case Opcode::ECMA_DEBUGGER_PREF_NONE: 9884514f5e3Sopenharmony_ci return Format::PREF_NONE; 9894514f5e3Sopenharmony_ci case Opcode::ECMA_ADD2DYN_PREF_V8: 9904514f5e3Sopenharmony_ci return Format::PREF_V8; 9914514f5e3Sopenharmony_ci case Opcode::ECMA_SUB2DYN_PREF_V8: 9924514f5e3Sopenharmony_ci return Format::PREF_V8; 9934514f5e3Sopenharmony_ci case Opcode::ECMA_MUL2DYN_PREF_V8: 9944514f5e3Sopenharmony_ci return Format::PREF_V8; 9954514f5e3Sopenharmony_ci case Opcode::ECMA_DIV2DYN_PREF_V8: 9964514f5e3Sopenharmony_ci return Format::PREF_V8; 9974514f5e3Sopenharmony_ci case Opcode::ECMA_MOD2DYN_PREF_V8: 9984514f5e3Sopenharmony_ci return Format::PREF_V8; 9994514f5e3Sopenharmony_ci case Opcode::ECMA_EQDYN_PREF_V8: 10004514f5e3Sopenharmony_ci return Format::PREF_V8; 10014514f5e3Sopenharmony_ci case Opcode::ECMA_NOTEQDYN_PREF_V8: 10024514f5e3Sopenharmony_ci return Format::PREF_V8; 10034514f5e3Sopenharmony_ci case Opcode::ECMA_LESSDYN_PREF_V8: 10044514f5e3Sopenharmony_ci return Format::PREF_V8; 10054514f5e3Sopenharmony_ci case Opcode::ECMA_LESSEQDYN_PREF_V8: 10064514f5e3Sopenharmony_ci return Format::PREF_V8; 10074514f5e3Sopenharmony_ci case Opcode::ECMA_GREATERDYN_PREF_V8: 10084514f5e3Sopenharmony_ci return Format::PREF_V8; 10094514f5e3Sopenharmony_ci case Opcode::ECMA_GREATEREQDYN_PREF_V8: 10104514f5e3Sopenharmony_ci return Format::PREF_V8; 10114514f5e3Sopenharmony_ci case Opcode::ECMA_SHL2DYN_PREF_V8: 10124514f5e3Sopenharmony_ci return Format::PREF_V8; 10134514f5e3Sopenharmony_ci case Opcode::ECMA_SHR2DYN_PREF_V8: 10144514f5e3Sopenharmony_ci return Format::PREF_V8; 10154514f5e3Sopenharmony_ci case Opcode::ECMA_ASHR2DYN_PREF_V8: 10164514f5e3Sopenharmony_ci return Format::PREF_V8; 10174514f5e3Sopenharmony_ci case Opcode::ECMA_AND2DYN_PREF_V8: 10184514f5e3Sopenharmony_ci return Format::PREF_V8; 10194514f5e3Sopenharmony_ci case Opcode::ECMA_OR2DYN_PREF_V8: 10204514f5e3Sopenharmony_ci return Format::PREF_V8; 10214514f5e3Sopenharmony_ci case Opcode::ECMA_XOR2DYN_PREF_V8: 10224514f5e3Sopenharmony_ci return Format::PREF_V8; 10234514f5e3Sopenharmony_ci case Opcode::ECMA_TONUMBER_PREF_V8: 10244514f5e3Sopenharmony_ci return Format::PREF_V8; 10254514f5e3Sopenharmony_ci case Opcode::ECMA_NEGDYN_PREF_V8: 10264514f5e3Sopenharmony_ci return Format::PREF_V8; 10274514f5e3Sopenharmony_ci case Opcode::ECMA_NOTDYN_PREF_V8: 10284514f5e3Sopenharmony_ci return Format::PREF_V8; 10294514f5e3Sopenharmony_ci case Opcode::ECMA_INCDYN_PREF_V8: 10304514f5e3Sopenharmony_ci return Format::PREF_V8; 10314514f5e3Sopenharmony_ci case Opcode::ECMA_DECDYN_PREF_V8: 10324514f5e3Sopenharmony_ci return Format::PREF_V8; 10334514f5e3Sopenharmony_ci case Opcode::ECMA_EXPDYN_PREF_V8: 10344514f5e3Sopenharmony_ci return Format::PREF_V8; 10354514f5e3Sopenharmony_ci case Opcode::ECMA_ISINDYN_PREF_V8: 10364514f5e3Sopenharmony_ci return Format::PREF_V8; 10374514f5e3Sopenharmony_ci case Opcode::ECMA_INSTANCEOFDYN_PREF_V8: 10384514f5e3Sopenharmony_ci return Format::PREF_V8; 10394514f5e3Sopenharmony_ci case Opcode::ECMA_STRICTNOTEQDYN_PREF_V8: 10404514f5e3Sopenharmony_ci return Format::PREF_V8; 10414514f5e3Sopenharmony_ci case Opcode::ECMA_STRICTEQDYN_PREF_V8: 10424514f5e3Sopenharmony_ci return Format::PREF_V8; 10434514f5e3Sopenharmony_ci case Opcode::ECMA_RESUMEGENERATOR_PREF_V8: 10444514f5e3Sopenharmony_ci return Format::PREF_V8; 10454514f5e3Sopenharmony_ci case Opcode::ECMA_GETRESUMEMODE_PREF_V8: 10464514f5e3Sopenharmony_ci return Format::PREF_V8; 10474514f5e3Sopenharmony_ci case Opcode::ECMA_CREATEGENERATOROBJ_PREF_V8: 10484514f5e3Sopenharmony_ci return Format::PREF_V8; 10494514f5e3Sopenharmony_ci case Opcode::ECMA_THROWCONSTASSIGNMENT_PREF_V8: 10504514f5e3Sopenharmony_ci return Format::PREF_V8; 10514514f5e3Sopenharmony_ci case Opcode::ECMA_GETTEMPLATEOBJECT_PREF_V8: 10524514f5e3Sopenharmony_ci return Format::PREF_V8; 10534514f5e3Sopenharmony_ci case Opcode::ECMA_GETNEXTPROPNAME_PREF_V8: 10544514f5e3Sopenharmony_ci return Format::PREF_V8; 10554514f5e3Sopenharmony_ci case Opcode::ECMA_CALLARG0DYN_PREF_V8: 10564514f5e3Sopenharmony_ci return Format::PREF_V8; 10574514f5e3Sopenharmony_ci case Opcode::ECMA_THROWIFNOTOBJECT_PREF_V8: 10584514f5e3Sopenharmony_ci return Format::PREF_V8; 10594514f5e3Sopenharmony_ci case Opcode::ECMA_ITERNEXT_PREF_V8: 10604514f5e3Sopenharmony_ci return Format::PREF_V8; 10614514f5e3Sopenharmony_ci case Opcode::ECMA_CLOSEITERATOR_PREF_V8: 10624514f5e3Sopenharmony_ci return Format::PREF_V8; 10634514f5e3Sopenharmony_ci case Opcode::ECMA_COPYMODULE_PREF_V8: 10644514f5e3Sopenharmony_ci return Format::PREF_V8; 10654514f5e3Sopenharmony_ci case Opcode::ECMA_SUPERCALLSPREAD_PREF_V8: 10664514f5e3Sopenharmony_ci return Format::PREF_V8; 10674514f5e3Sopenharmony_ci case Opcode::ECMA_DELOBJPROP_PREF_V8_V8: 10684514f5e3Sopenharmony_ci return Format::PREF_V8_V8; 10694514f5e3Sopenharmony_ci case Opcode::ECMA_NEWOBJSPREADDYN_PREF_V8_V8: 10704514f5e3Sopenharmony_ci return Format::PREF_V8_V8; 10714514f5e3Sopenharmony_ci case Opcode::ECMA_CREATEITERRESULTOBJ_PREF_V8_V8: 10724514f5e3Sopenharmony_ci return Format::PREF_V8_V8; 10734514f5e3Sopenharmony_ci case Opcode::ECMA_SUSPENDGENERATOR_PREF_V8_V8: 10744514f5e3Sopenharmony_ci return Format::PREF_V8_V8; 10754514f5e3Sopenharmony_ci case Opcode::ECMA_ASYNCFUNCTIONAWAITUNCAUGHT_PREF_V8_V8: 10764514f5e3Sopenharmony_ci return Format::PREF_V8_V8; 10774514f5e3Sopenharmony_ci case Opcode::ECMA_THROWUNDEFINEDIFHOLE_PREF_V8_V8: 10784514f5e3Sopenharmony_ci return Format::PREF_V8_V8; 10794514f5e3Sopenharmony_ci case Opcode::ECMA_CALLARG1DYN_PREF_V8_V8: 10804514f5e3Sopenharmony_ci return Format::PREF_V8_V8; 10814514f5e3Sopenharmony_ci case Opcode::ECMA_COPYDATAPROPERTIES_PREF_V8_V8: 10824514f5e3Sopenharmony_ci return Format::PREF_V8_V8; 10834514f5e3Sopenharmony_ci case Opcode::ECMA_STARRAYSPREAD_PREF_V8_V8: 10844514f5e3Sopenharmony_ci return Format::PREF_V8_V8; 10854514f5e3Sopenharmony_ci case Opcode::ECMA_GETITERATORNEXT_PREF_V8_V8: 10864514f5e3Sopenharmony_ci return Format::PREF_V8_V8; 10874514f5e3Sopenharmony_ci case Opcode::ECMA_SETOBJECTWITHPROTO_PREF_V8_V8: 10884514f5e3Sopenharmony_ci return Format::PREF_V8_V8; 10894514f5e3Sopenharmony_ci case Opcode::ECMA_LDOBJBYVALUE_PREF_V8_V8: 10904514f5e3Sopenharmony_ci return Format::PREF_V8_V8; 10914514f5e3Sopenharmony_ci case Opcode::ECMA_STOBJBYVALUE_PREF_V8_V8: 10924514f5e3Sopenharmony_ci return Format::PREF_V8_V8; 10934514f5e3Sopenharmony_ci case Opcode::ECMA_STOWNBYVALUE_PREF_V8_V8: 10944514f5e3Sopenharmony_ci return Format::PREF_V8_V8; 10954514f5e3Sopenharmony_ci case Opcode::ECMA_LDSUPERBYVALUE_PREF_V8_V8: 10964514f5e3Sopenharmony_ci return Format::PREF_V8_V8; 10974514f5e3Sopenharmony_ci case Opcode::ECMA_STSUPERBYVALUE_PREF_V8_V8: 10984514f5e3Sopenharmony_ci return Format::PREF_V8_V8; 10994514f5e3Sopenharmony_ci case Opcode::ECMA_LDOBJBYINDEX_PREF_V8_IMM32: 11004514f5e3Sopenharmony_ci return Format::PREF_V8_IMM32; 11014514f5e3Sopenharmony_ci case Opcode::ECMA_STOBJBYINDEX_PREF_V8_IMM32: 11024514f5e3Sopenharmony_ci return Format::PREF_V8_IMM32; 11034514f5e3Sopenharmony_ci case Opcode::ECMA_STOWNBYINDEX_PREF_V8_IMM32: 11044514f5e3Sopenharmony_ci return Format::PREF_V8_IMM32; 11054514f5e3Sopenharmony_ci case Opcode::ECMA_CALLSPREADDYN_PREF_V8_V8_V8: 11064514f5e3Sopenharmony_ci return Format::PREF_V8_V8_V8; 11074514f5e3Sopenharmony_ci case Opcode::ECMA_ASYNCFUNCTIONRESOLVE_PREF_V8_V8_V8: 11084514f5e3Sopenharmony_ci return Format::PREF_V8_V8_V8; 11094514f5e3Sopenharmony_ci case Opcode::ECMA_ASYNCFUNCTIONREJECT_PREF_V8_V8_V8: 11104514f5e3Sopenharmony_ci return Format::PREF_V8_V8_V8; 11114514f5e3Sopenharmony_ci case Opcode::ECMA_CALLARGS2DYN_PREF_V8_V8_V8: 11124514f5e3Sopenharmony_ci return Format::PREF_V8_V8_V8; 11134514f5e3Sopenharmony_ci case Opcode::ECMA_CALLARGS3DYN_PREF_V8_V8_V8_V8: 11144514f5e3Sopenharmony_ci return Format::PREF_V8_V8_V8_V8; 11154514f5e3Sopenharmony_ci case Opcode::ECMA_DEFINEGETTERSETTERBYVALUE_PREF_V8_V8_V8_V8: 11164514f5e3Sopenharmony_ci return Format::PREF_V8_V8_V8_V8; 11174514f5e3Sopenharmony_ci case Opcode::ECMA_NEWOBJDYNRANGE_PREF_IMM16_V8: 11184514f5e3Sopenharmony_ci return Format::PREF_IMM16_V8; 11194514f5e3Sopenharmony_ci case Opcode::ECMA_CALLRANGEDYN_PREF_IMM16_V8: 11204514f5e3Sopenharmony_ci return Format::PREF_IMM16_V8; 11214514f5e3Sopenharmony_ci case Opcode::ECMA_CALLTHISRANGEDYN_PREF_IMM16_V8: 11224514f5e3Sopenharmony_ci return Format::PREF_IMM16_V8; 11234514f5e3Sopenharmony_ci case Opcode::ECMA_SUPERCALL_PREF_IMM16_V8: 11244514f5e3Sopenharmony_ci return Format::PREF_IMM16_V8; 11254514f5e3Sopenharmony_ci case Opcode::ECMA_CREATEOBJECTWITHEXCLUDEDKEYS_PREF_IMM16_V8_V8: 11264514f5e3Sopenharmony_ci return Format::PREF_IMM16_V8_V8; 11274514f5e3Sopenharmony_ci case Opcode::ECMA_DEFINEFUNCDYN_PREF_ID16_IMM16_V8: 11284514f5e3Sopenharmony_ci return Format::PREF_ID16_IMM16_V8; 11294514f5e3Sopenharmony_ci case Opcode::ECMA_DEFINENCFUNCDYN_PREF_ID16_IMM16_V8: 11304514f5e3Sopenharmony_ci return Format::PREF_ID16_IMM16_V8; 11314514f5e3Sopenharmony_ci case Opcode::ECMA_DEFINEGENERATORFUNC_PREF_ID16_IMM16_V8: 11324514f5e3Sopenharmony_ci return Format::PREF_ID16_IMM16_V8; 11334514f5e3Sopenharmony_ci case Opcode::ECMA_DEFINEASYNCFUNC_PREF_ID16_IMM16_V8: 11344514f5e3Sopenharmony_ci return Format::PREF_ID16_IMM16_V8; 11354514f5e3Sopenharmony_ci case Opcode::ECMA_DEFINEMETHOD_PREF_ID16_IMM16_V8: 11364514f5e3Sopenharmony_ci return Format::PREF_ID16_IMM16_V8; 11374514f5e3Sopenharmony_ci case Opcode::ECMA_NEWLEXENVDYN_PREF_IMM16: 11384514f5e3Sopenharmony_ci return Format::PREF_IMM16; 11394514f5e3Sopenharmony_ci case Opcode::ECMA_COPYRESTARGS_PREF_IMM16: 11404514f5e3Sopenharmony_ci return Format::PREF_IMM16; 11414514f5e3Sopenharmony_ci case Opcode::ECMA_CREATEARRAYWITHBUFFER_PREF_IMM16: 11424514f5e3Sopenharmony_ci return Format::PREF_IMM16; 11434514f5e3Sopenharmony_ci case Opcode::ECMA_CREATEOBJECTHAVINGMETHOD_PREF_IMM16: 11444514f5e3Sopenharmony_ci return Format::PREF_IMM16; 11454514f5e3Sopenharmony_ci case Opcode::ECMA_THROWIFSUPERNOTCORRECTCALL_PREF_IMM16: 11464514f5e3Sopenharmony_ci return Format::PREF_IMM16; 11474514f5e3Sopenharmony_ci case Opcode::ECMA_CREATEOBJECTWITHBUFFER_PREF_IMM16: 11484514f5e3Sopenharmony_ci return Format::PREF_IMM16; 11494514f5e3Sopenharmony_ci case Opcode::ECMA_LDLEXVARDYN_PREF_IMM4_IMM4: 11504514f5e3Sopenharmony_ci return Format::PREF_IMM4_IMM4; 11514514f5e3Sopenharmony_ci case Opcode::ECMA_LDLEXVARDYN_PREF_IMM8_IMM8: 11524514f5e3Sopenharmony_ci return Format::PREF_IMM8_IMM8; 11534514f5e3Sopenharmony_ci case Opcode::ECMA_LDLEXVARDYN_PREF_IMM16_IMM16: 11544514f5e3Sopenharmony_ci return Format::PREF_IMM16_IMM16; 11554514f5e3Sopenharmony_ci case Opcode::ECMA_STLEXVARDYN_PREF_IMM4_IMM4_V8: 11564514f5e3Sopenharmony_ci return Format::PREF_IMM4_IMM4_V8; 11574514f5e3Sopenharmony_ci case Opcode::ECMA_STLEXVARDYN_PREF_IMM8_IMM8_V8: 11584514f5e3Sopenharmony_ci return Format::PREF_IMM8_IMM8_V8; 11594514f5e3Sopenharmony_ci case Opcode::ECMA_STLEXVARDYN_PREF_IMM16_IMM16_V8: 11604514f5e3Sopenharmony_ci return Format::PREF_IMM16_IMM16_V8; 11614514f5e3Sopenharmony_ci case Opcode::ECMA_DEFINECLASSWITHBUFFER_PREF_ID16_IMM16_IMM16_V8_V8: 11624514f5e3Sopenharmony_ci return Format::PREF_ID16_IMM16_IMM16_V8_V8; 11634514f5e3Sopenharmony_ci case Opcode::ECMA_GETMODULENAMESPACE_PREF_ID32: 11644514f5e3Sopenharmony_ci return Format::PREF_ID32; 11654514f5e3Sopenharmony_ci case Opcode::ECMA_STMODULEVAR_PREF_ID32: 11664514f5e3Sopenharmony_ci return Format::PREF_ID32; 11674514f5e3Sopenharmony_ci case Opcode::ECMA_TRYLDGLOBALBYNAME_PREF_ID32: 11684514f5e3Sopenharmony_ci return Format::PREF_ID32; 11694514f5e3Sopenharmony_ci case Opcode::ECMA_TRYSTGLOBALBYNAME_PREF_ID32: 11704514f5e3Sopenharmony_ci return Format::PREF_ID32; 11714514f5e3Sopenharmony_ci case Opcode::ECMA_LDGLOBALVAR_PREF_ID32: 11724514f5e3Sopenharmony_ci return Format::PREF_ID32; 11734514f5e3Sopenharmony_ci case Opcode::ECMA_STGLOBALVAR_PREF_ID32: 11744514f5e3Sopenharmony_ci return Format::PREF_ID32; 11754514f5e3Sopenharmony_ci case Opcode::ECMA_LDOBJBYNAME_PREF_ID32_V8: 11764514f5e3Sopenharmony_ci return Format::PREF_ID32_V8; 11774514f5e3Sopenharmony_ci case Opcode::ECMA_STOBJBYNAME_PREF_ID32_V8: 11784514f5e3Sopenharmony_ci return Format::PREF_ID32_V8; 11794514f5e3Sopenharmony_ci case Opcode::ECMA_STOWNBYNAME_PREF_ID32_V8: 11804514f5e3Sopenharmony_ci return Format::PREF_ID32_V8; 11814514f5e3Sopenharmony_ci case Opcode::ECMA_LDSUPERBYNAME_PREF_ID32_V8: 11824514f5e3Sopenharmony_ci return Format::PREF_ID32_V8; 11834514f5e3Sopenharmony_ci case Opcode::ECMA_STSUPERBYNAME_PREF_ID32_V8: 11844514f5e3Sopenharmony_ci return Format::PREF_ID32_V8; 11854514f5e3Sopenharmony_ci case Opcode::ECMA_LDMODULEVAR_PREF_ID32_IMM8: 11864514f5e3Sopenharmony_ci return Format::PREF_ID32_IMM8; 11874514f5e3Sopenharmony_ci case Opcode::ECMA_CREATEREGEXPWITHLITERAL_PREF_ID32_IMM8: 11884514f5e3Sopenharmony_ci return Format::PREF_ID32_IMM8; 11894514f5e3Sopenharmony_ci case Opcode::ECMA_ISTRUE_PREF_NONE: 11904514f5e3Sopenharmony_ci return Format::PREF_NONE; 11914514f5e3Sopenharmony_ci case Opcode::ECMA_ISFALSE_PREF_NONE: 11924514f5e3Sopenharmony_ci return Format::PREF_NONE; 11934514f5e3Sopenharmony_ci case Opcode::ECMA_STCONSTTOGLOBALRECORD_PREF_ID32: 11944514f5e3Sopenharmony_ci return Format::PREF_ID32; 11954514f5e3Sopenharmony_ci case Opcode::ECMA_STLETTOGLOBALRECORD_PREF_ID32: 11964514f5e3Sopenharmony_ci return Format::PREF_ID32; 11974514f5e3Sopenharmony_ci case Opcode::ECMA_STCLASSTOGLOBALRECORD_PREF_ID32: 11984514f5e3Sopenharmony_ci return Format::PREF_ID32; 11994514f5e3Sopenharmony_ci case Opcode::ECMA_STOWNBYVALUEWITHNAMESET_PREF_V8_V8: 12004514f5e3Sopenharmony_ci return Format::PREF_V8_V8; 12014514f5e3Sopenharmony_ci case Opcode::ECMA_STOWNBYNAMEWITHNAMESET_PREF_ID32_V8: 12024514f5e3Sopenharmony_ci return Format::PREF_ID32_V8; 12034514f5e3Sopenharmony_ci case Opcode::ECMA_LDFUNCTION_PREF_NONE: 12044514f5e3Sopenharmony_ci return Format::PREF_NONE; 12054514f5e3Sopenharmony_ci case Opcode::ECMA_NEWLEXENVWITHNAMEDYN_PREF_IMM16_IMM16: 12064514f5e3Sopenharmony_ci return Format::PREF_IMM16_IMM16; 12074514f5e3Sopenharmony_ci case Opcode::ECMA_LDBIGINT_PREF_ID32: 12084514f5e3Sopenharmony_ci return Format::PREF_ID32; 12094514f5e3Sopenharmony_ci case Opcode::ECMA_TONUMERIC_PREF_V8: 12104514f5e3Sopenharmony_ci return Format::PREF_V8; 12114514f5e3Sopenharmony_ci case Opcode::ECMA_CREATEASYNCGENERATOROBJ_PREF_V8: 12124514f5e3Sopenharmony_ci return Format::PREF_V8; 12134514f5e3Sopenharmony_ci case Opcode::ECMA_ASYNCGENERATORRESOLVE_PREF_V8_V8_V8: 12144514f5e3Sopenharmony_ci return Format::PREF_V8_V8_V8; 12154514f5e3Sopenharmony_ci case Opcode::ECMA_DEFINEASYNCGENERATORFUNC_PREF_ID16_IMM16_V8: 12164514f5e3Sopenharmony_ci return Format::PREF_ID16_IMM16_V8; 12174514f5e3Sopenharmony_ci case Opcode::ECMA_DYNAMICIMPORT_PREF_V8: 12184514f5e3Sopenharmony_ci return Format::PREF_V8; 12194514f5e3Sopenharmony_ci case Opcode::ECMA_LDPATCHVAR_PREF_IMM16: 12204514f5e3Sopenharmony_ci return Format::PREF_IMM16; 12214514f5e3Sopenharmony_ci case Opcode::ECMA_STPATCHVAR_PREF_IMM16: 12224514f5e3Sopenharmony_ci return Format::PREF_IMM16; 12234514f5e3Sopenharmony_ci case Opcode::ECMA_ASYNCGENERATORREJECT_PREF_V8_V8: 12244514f5e3Sopenharmony_ci return Format::PREF_V8_V8; 12254514f5e3Sopenharmony_ci default: 12264514f5e3Sopenharmony_ci break; 12274514f5e3Sopenharmony_ci } 12284514f5e3Sopenharmony_ci LOG_ECMA(FATAL) << "this branch is unreachable"; 12294514f5e3Sopenharmony_ci UNREACHABLE(); 12304514f5e3Sopenharmony_ci } 12314514f5e3Sopenharmony_ci 12324514f5e3Sopenharmony_ci static constexpr bool HasId(Format format, size_t idx) 12334514f5e3Sopenharmony_ci { 12344514f5e3Sopenharmony_ci switch (format) { 12354514f5e3Sopenharmony_ci case Format::ID16: 12364514f5e3Sopenharmony_ci return idx < 1; 12374514f5e3Sopenharmony_ci case Format::ID32: 12384514f5e3Sopenharmony_ci return idx < 1; 12394514f5e3Sopenharmony_ci case Format::PREF_ID16_IMM16_IMM16_V8_V8: 12404514f5e3Sopenharmony_ci return idx < 1; 12414514f5e3Sopenharmony_ci case Format::PREF_ID16_IMM16_V8: 12424514f5e3Sopenharmony_ci return idx < 1; 12434514f5e3Sopenharmony_ci case Format::PREF_ID32: 12444514f5e3Sopenharmony_ci return idx < 1; 12454514f5e3Sopenharmony_ci case Format::PREF_ID32_IMM8: 12464514f5e3Sopenharmony_ci return idx < 1; 12474514f5e3Sopenharmony_ci case Format::PREF_ID32_V8: 12484514f5e3Sopenharmony_ci return idx < 1; 12494514f5e3Sopenharmony_ci case Format::V4_IMM4_ID16: 12504514f5e3Sopenharmony_ci return idx < 1; 12514514f5e3Sopenharmony_ci case Format::V4_V4_ID16: 12524514f5e3Sopenharmony_ci return idx < 1; 12534514f5e3Sopenharmony_ci case Format::V4_V4_V4_IMM4_ID16: 12544514f5e3Sopenharmony_ci return idx < 1; 12554514f5e3Sopenharmony_ci case Format::V4_V4_V4_V4_ID16: 12564514f5e3Sopenharmony_ci return idx < 1; 12574514f5e3Sopenharmony_ci case Format::V8_ID16: 12584514f5e3Sopenharmony_ci return idx < 1; 12594514f5e3Sopenharmony_ci case Format::V8_ID32: 12604514f5e3Sopenharmony_ci return idx < 1; 12614514f5e3Sopenharmony_ci default: { 12624514f5e3Sopenharmony_ci return false; 12634514f5e3Sopenharmony_ci } 12644514f5e3Sopenharmony_ci } 12654514f5e3Sopenharmony_ci } 12664514f5e3Sopenharmony_ci 12674514f5e3Sopenharmony_ci inline bool HasFlag(Flags flag) const 12684514f5e3Sopenharmony_ci { 12694514f5e3Sopenharmony_ci switch (GetOpcode()) { 12704514f5e3Sopenharmony_ci case Opcode::NOP: 12714514f5e3Sopenharmony_ci return ((Flags::ACC_NONE) & flag) == flag; 12724514f5e3Sopenharmony_ci case Opcode::MOV_V4_V4: 12734514f5e3Sopenharmony_ci return ((Flags::ACC_NONE) & flag) == flag; 12744514f5e3Sopenharmony_ci case Opcode::MOV_V8_V8: 12754514f5e3Sopenharmony_ci return ((Flags::ACC_NONE) & flag) == flag; 12764514f5e3Sopenharmony_ci case Opcode::MOV_V16_V16: 12774514f5e3Sopenharmony_ci return ((Flags::ACC_NONE) & flag) == flag; 12784514f5e3Sopenharmony_ci case Opcode::MOV_64_V4_V4: 12794514f5e3Sopenharmony_ci return ((Flags::ACC_NONE) & flag) == flag; 12804514f5e3Sopenharmony_ci case Opcode::MOV_64_V16_V16: 12814514f5e3Sopenharmony_ci return ((Flags::ACC_NONE) & flag) == flag; 12824514f5e3Sopenharmony_ci case Opcode::MOV_OBJ_V4_V4: 12834514f5e3Sopenharmony_ci return ((Flags::ACC_NONE) & flag) == flag; 12844514f5e3Sopenharmony_ci case Opcode::MOV_OBJ_V8_V8: 12854514f5e3Sopenharmony_ci return ((Flags::ACC_NONE) & flag) == flag; 12864514f5e3Sopenharmony_ci case Opcode::MOV_OBJ_V16_V16: 12874514f5e3Sopenharmony_ci return ((Flags::ACC_NONE) & flag) == flag; 12884514f5e3Sopenharmony_ci case Opcode::MOVI_V4_IMM4: 12894514f5e3Sopenharmony_ci return ((Flags::ACC_NONE) & flag) == flag; 12904514f5e3Sopenharmony_ci case Opcode::MOVI_V8_IMM8: 12914514f5e3Sopenharmony_ci return ((Flags::ACC_NONE) & flag) == flag; 12924514f5e3Sopenharmony_ci case Opcode::MOVI_V8_IMM16: 12934514f5e3Sopenharmony_ci return ((Flags::ACC_NONE) & flag) == flag; 12944514f5e3Sopenharmony_ci case Opcode::MOVI_V8_IMM32: 12954514f5e3Sopenharmony_ci return ((Flags::ACC_NONE) & flag) == flag; 12964514f5e3Sopenharmony_ci case Opcode::MOVI_64_V8_IMM64: 12974514f5e3Sopenharmony_ci return ((Flags::ACC_NONE) & flag) == flag; 12984514f5e3Sopenharmony_ci case Opcode::FMOVI_64_V8_IMM64: 12994514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_NONE) & flag) == flag; 13004514f5e3Sopenharmony_ci case Opcode::MOV_NULL_V8: 13014514f5e3Sopenharmony_ci return ((Flags::ACC_NONE) & flag) == flag; 13024514f5e3Sopenharmony_ci case Opcode::LDA_V8: 13034514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE) & flag) == flag; 13044514f5e3Sopenharmony_ci case Opcode::LDA_64_V8: 13054514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE) & flag) == flag; 13064514f5e3Sopenharmony_ci case Opcode::LDA_OBJ_V8: 13074514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE) & flag) == flag; 13084514f5e3Sopenharmony_ci case Opcode::LDAI_IMM8: 13094514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE) & flag) == flag; 13104514f5e3Sopenharmony_ci case Opcode::LDAI_IMM16: 13114514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE) & flag) == flag; 13124514f5e3Sopenharmony_ci case Opcode::LDAI_IMM32: 13134514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE) & flag) == flag; 13144514f5e3Sopenharmony_ci case Opcode::LDAI_64_IMM64: 13154514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE) & flag) == flag; 13164514f5e3Sopenharmony_ci case Opcode::FLDAI_64_IMM64: 13174514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE) & flag) == flag; 13184514f5e3Sopenharmony_ci case Opcode::LDA_STR_ID32: 13194514f5e3Sopenharmony_ci return ((Flags::STRING_ID | Flags::LANGUAGE_TYPE | Flags::MAYBE_DYNAMIC | Flags::ACC_WRITE) & flag) == 13204514f5e3Sopenharmony_ci flag; 13214514f5e3Sopenharmony_ci case Opcode::LDA_CONST_V8_ID32: 13224514f5e3Sopenharmony_ci return ((Flags::LITERALARRAY_ID | Flags::ACC_NONE) & flag) == flag; 13234514f5e3Sopenharmony_ci case Opcode::LDA_TYPE_ID16: 13244514f5e3Sopenharmony_ci return ((Flags::TYPE_ID | Flags::LANGUAGE_TYPE | Flags::ACC_WRITE) & flag) == flag; 13254514f5e3Sopenharmony_ci case Opcode::LDA_NULL: 13264514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE) & flag) == flag; 13274514f5e3Sopenharmony_ci case Opcode::STA_V8: 13284514f5e3Sopenharmony_ci return ((Flags::ACC_READ) & flag) == flag; 13294514f5e3Sopenharmony_ci case Opcode::STA_64_V8: 13304514f5e3Sopenharmony_ci return ((Flags::ACC_READ) & flag) == flag; 13314514f5e3Sopenharmony_ci case Opcode::STA_OBJ_V8: 13324514f5e3Sopenharmony_ci return ((Flags::ACC_READ) & flag) == flag; 13334514f5e3Sopenharmony_ci case Opcode::CMP_64_V8: 13344514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 13354514f5e3Sopenharmony_ci case Opcode::FCMPL_64_V8: 13364514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 13374514f5e3Sopenharmony_ci case Opcode::FCMPG_64_V8: 13384514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 13394514f5e3Sopenharmony_ci case Opcode::JMP_IMM8: 13404514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::ACC_NONE) & flag) == flag; 13414514f5e3Sopenharmony_ci case Opcode::JMP_IMM16: 13424514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::ACC_NONE) & flag) == flag; 13434514f5e3Sopenharmony_ci case Opcode::JMP_IMM32: 13444514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::ACC_NONE) & flag) == flag; 13454514f5e3Sopenharmony_ci case Opcode::JEQ_OBJ_V8_IMM8: 13464514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13474514f5e3Sopenharmony_ci case Opcode::JEQ_OBJ_V8_IMM16: 13484514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13494514f5e3Sopenharmony_ci case Opcode::JNE_OBJ_V8_IMM8: 13504514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13514514f5e3Sopenharmony_ci case Opcode::JNE_OBJ_V8_IMM16: 13524514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13534514f5e3Sopenharmony_ci case Opcode::JEQZ_OBJ_IMM8: 13544514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13554514f5e3Sopenharmony_ci case Opcode::JEQZ_OBJ_IMM16: 13564514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13574514f5e3Sopenharmony_ci case Opcode::JNEZ_OBJ_IMM8: 13584514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13594514f5e3Sopenharmony_ci case Opcode::JNEZ_OBJ_IMM16: 13604514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13614514f5e3Sopenharmony_ci case Opcode::JEQZ_IMM8: 13624514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13634514f5e3Sopenharmony_ci case Opcode::JEQZ_IMM16: 13644514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13654514f5e3Sopenharmony_ci case Opcode::JNEZ_IMM8: 13664514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13674514f5e3Sopenharmony_ci case Opcode::JNEZ_IMM16: 13684514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13694514f5e3Sopenharmony_ci case Opcode::JLTZ_IMM8: 13704514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13714514f5e3Sopenharmony_ci case Opcode::JLTZ_IMM16: 13724514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13734514f5e3Sopenharmony_ci case Opcode::JGTZ_IMM8: 13744514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13754514f5e3Sopenharmony_ci case Opcode::JGTZ_IMM16: 13764514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13774514f5e3Sopenharmony_ci case Opcode::JLEZ_IMM8: 13784514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13794514f5e3Sopenharmony_ci case Opcode::JLEZ_IMM16: 13804514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13814514f5e3Sopenharmony_ci case Opcode::JGEZ_IMM8: 13824514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13834514f5e3Sopenharmony_ci case Opcode::JGEZ_IMM16: 13844514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13854514f5e3Sopenharmony_ci case Opcode::JEQ_V8_IMM8: 13864514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13874514f5e3Sopenharmony_ci case Opcode::JEQ_V8_IMM16: 13884514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13894514f5e3Sopenharmony_ci case Opcode::JNE_V8_IMM8: 13904514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13914514f5e3Sopenharmony_ci case Opcode::JNE_V8_IMM16: 13924514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13934514f5e3Sopenharmony_ci case Opcode::JLT_V8_IMM8: 13944514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13954514f5e3Sopenharmony_ci case Opcode::JLT_V8_IMM16: 13964514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13974514f5e3Sopenharmony_ci case Opcode::JGT_V8_IMM8: 13984514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 13994514f5e3Sopenharmony_ci case Opcode::JGT_V8_IMM16: 14004514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 14014514f5e3Sopenharmony_ci case Opcode::JLE_V8_IMM8: 14024514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 14034514f5e3Sopenharmony_ci case Opcode::JLE_V8_IMM16: 14044514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 14054514f5e3Sopenharmony_ci case Opcode::JGE_V8_IMM8: 14064514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 14074514f5e3Sopenharmony_ci case Opcode::JGE_V8_IMM16: 14084514f5e3Sopenharmony_ci return ((Flags::JUMP | Flags::CONDITIONAL | Flags::ACC_READ) & flag) == flag; 14094514f5e3Sopenharmony_ci case Opcode::FNEG_64: 14104514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14114514f5e3Sopenharmony_ci case Opcode::NEG: 14124514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14134514f5e3Sopenharmony_ci case Opcode::NEG_64: 14144514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14154514f5e3Sopenharmony_ci case Opcode::ADD2_V8: 14164514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14174514f5e3Sopenharmony_ci case Opcode::ADD2_64_V8: 14184514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14194514f5e3Sopenharmony_ci case Opcode::SUB2_V8: 14204514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14214514f5e3Sopenharmony_ci case Opcode::SUB2_64_V8: 14224514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14234514f5e3Sopenharmony_ci case Opcode::MUL2_V8: 14244514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14254514f5e3Sopenharmony_ci case Opcode::MUL2_64_V8: 14264514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14274514f5e3Sopenharmony_ci case Opcode::FADD2_64_V8: 14284514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14294514f5e3Sopenharmony_ci case Opcode::FSUB2_64_V8: 14304514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14314514f5e3Sopenharmony_ci case Opcode::FMUL2_64_V8: 14324514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14334514f5e3Sopenharmony_ci case Opcode::FDIV2_64_V8: 14344514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14354514f5e3Sopenharmony_ci case Opcode::FMOD2_64_V8: 14364514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14374514f5e3Sopenharmony_ci case Opcode::DIV2_V8: 14384514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14394514f5e3Sopenharmony_ci case Opcode::DIV2_64_V8: 14404514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14414514f5e3Sopenharmony_ci case Opcode::MOD2_V8: 14424514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14434514f5e3Sopenharmony_ci case Opcode::MOD2_64_V8: 14444514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14454514f5e3Sopenharmony_ci case Opcode::ADDI_IMM8: 14464514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14474514f5e3Sopenharmony_ci case Opcode::SUBI_IMM8: 14484514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14494514f5e3Sopenharmony_ci case Opcode::MULI_IMM8: 14504514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14514514f5e3Sopenharmony_ci case Opcode::ANDI_IMM32: 14524514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14534514f5e3Sopenharmony_ci case Opcode::ORI_IMM32: 14544514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14554514f5e3Sopenharmony_ci case Opcode::SHLI_IMM8: 14564514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14574514f5e3Sopenharmony_ci case Opcode::SHRI_IMM8: 14584514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14594514f5e3Sopenharmony_ci case Opcode::ASHRI_IMM8: 14604514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14614514f5e3Sopenharmony_ci case Opcode::DIVI_IMM8: 14624514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14634514f5e3Sopenharmony_ci case Opcode::MODI_IMM8: 14644514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14654514f5e3Sopenharmony_ci case Opcode::ADD_V4_V4: 14664514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE) & flag) == flag; 14674514f5e3Sopenharmony_ci case Opcode::SUB_V4_V4: 14684514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE) & flag) == flag; 14694514f5e3Sopenharmony_ci case Opcode::MUL_V4_V4: 14704514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE) & flag) == flag; 14714514f5e3Sopenharmony_ci case Opcode::DIV_V4_V4: 14724514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE) & flag) == flag; 14734514f5e3Sopenharmony_ci case Opcode::MOD_V4_V4: 14744514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE) & flag) == flag; 14754514f5e3Sopenharmony_ci case Opcode::INCI_V4_IMM4: 14764514f5e3Sopenharmony_ci return ((Flags::ACC_NONE) & flag) == flag; 14774514f5e3Sopenharmony_ci case Opcode::LDARR_8_V8: 14784514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14794514f5e3Sopenharmony_ci case Opcode::LDARRU_8_V8: 14804514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14814514f5e3Sopenharmony_ci case Opcode::LDARR_16_V8: 14824514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14834514f5e3Sopenharmony_ci case Opcode::LDARRU_16_V8: 14844514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14854514f5e3Sopenharmony_ci case Opcode::LDARR_V8: 14864514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14874514f5e3Sopenharmony_ci case Opcode::LDARR_64_V8: 14884514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14894514f5e3Sopenharmony_ci case Opcode::FLDARR_32_V8: 14904514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14914514f5e3Sopenharmony_ci case Opcode::FLDARR_64_V8: 14924514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14934514f5e3Sopenharmony_ci case Opcode::LDARR_OBJ_V8: 14944514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 14954514f5e3Sopenharmony_ci case Opcode::STARR_8_V4_V4: 14964514f5e3Sopenharmony_ci return ((Flags::ACC_READ) & flag) == flag; 14974514f5e3Sopenharmony_ci case Opcode::STARR_16_V4_V4: 14984514f5e3Sopenharmony_ci return ((Flags::ACC_READ) & flag) == flag; 14994514f5e3Sopenharmony_ci case Opcode::STARR_V4_V4: 15004514f5e3Sopenharmony_ci return ((Flags::ACC_READ) & flag) == flag; 15014514f5e3Sopenharmony_ci case Opcode::STARR_64_V4_V4: 15024514f5e3Sopenharmony_ci return ((Flags::ACC_READ) & flag) == flag; 15034514f5e3Sopenharmony_ci case Opcode::FSTARR_32_V4_V4: 15044514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_READ) & flag) == flag; 15054514f5e3Sopenharmony_ci case Opcode::FSTARR_64_V4_V4: 15064514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_READ) & flag) == flag; 15074514f5e3Sopenharmony_ci case Opcode::STARR_OBJ_V4_V4: 15084514f5e3Sopenharmony_ci return ((Flags::ACC_READ) & flag) == flag; 15094514f5e3Sopenharmony_ci case Opcode::LENARR_V8: 15104514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE) & flag) == flag; 15114514f5e3Sopenharmony_ci case Opcode::NEWARR_V4_V4_ID16: 15124514f5e3Sopenharmony_ci return ((Flags::TYPE_ID | Flags::LANGUAGE_TYPE | Flags::INITIALIZE_TYPE | Flags::ACC_NONE) & flag) == 15134514f5e3Sopenharmony_ci flag; 15144514f5e3Sopenharmony_ci case Opcode::NEWOBJ_V8_ID16: 15154514f5e3Sopenharmony_ci return ((Flags::TYPE_ID | Flags::INITIALIZE_TYPE | Flags::ACC_NONE) & flag) == flag; 15164514f5e3Sopenharmony_ci case Opcode::INITOBJ_SHORT_V4_V4_ID16: 15174514f5e3Sopenharmony_ci return ((Flags::METHOD_ID | Flags::CALL | Flags::INITIALIZE_TYPE | Flags::ACC_WRITE) & flag) == flag; 15184514f5e3Sopenharmony_ci case Opcode::INITOBJ_V4_V4_V4_V4_ID16: 15194514f5e3Sopenharmony_ci return ((Flags::METHOD_ID | Flags::CALL | Flags::INITIALIZE_TYPE | Flags::ACC_WRITE) & flag) == flag; 15204514f5e3Sopenharmony_ci case Opcode::INITOBJ_RANGE_V8_ID16: 15214514f5e3Sopenharmony_ci return ((Flags::METHOD_ID | Flags::CALL | Flags::INITIALIZE_TYPE | Flags::ACC_WRITE) & flag) == flag; 15224514f5e3Sopenharmony_ci case Opcode::LDOBJ_V8_ID16: 15234514f5e3Sopenharmony_ci return ((Flags::FIELD_ID | Flags::ACC_WRITE) & flag) == flag; 15244514f5e3Sopenharmony_ci case Opcode::LDOBJ_64_V8_ID16: 15254514f5e3Sopenharmony_ci return ((Flags::FIELD_ID | Flags::ACC_WRITE) & flag) == flag; 15264514f5e3Sopenharmony_ci case Opcode::LDOBJ_OBJ_V8_ID16: 15274514f5e3Sopenharmony_ci return ((Flags::FIELD_ID | Flags::ACC_WRITE) & flag) == flag; 15284514f5e3Sopenharmony_ci case Opcode::STOBJ_V8_ID16: 15294514f5e3Sopenharmony_ci return ((Flags::FIELD_ID | Flags::ACC_READ) & flag) == flag; 15304514f5e3Sopenharmony_ci case Opcode::STOBJ_64_V8_ID16: 15314514f5e3Sopenharmony_ci return ((Flags::FIELD_ID | Flags::ACC_READ) & flag) == flag; 15324514f5e3Sopenharmony_ci case Opcode::STOBJ_OBJ_V8_ID16: 15334514f5e3Sopenharmony_ci return ((Flags::FIELD_ID | Flags::ACC_READ) & flag) == flag; 15344514f5e3Sopenharmony_ci case Opcode::LDOBJ_V_V4_V4_ID16: 15354514f5e3Sopenharmony_ci return ((Flags::FIELD_ID | Flags::ACC_NONE) & flag) == flag; 15364514f5e3Sopenharmony_ci case Opcode::LDOBJ_V_64_V4_V4_ID16: 15374514f5e3Sopenharmony_ci return ((Flags::FIELD_ID | Flags::ACC_NONE) & flag) == flag; 15384514f5e3Sopenharmony_ci case Opcode::LDOBJ_V_OBJ_V4_V4_ID16: 15394514f5e3Sopenharmony_ci return ((Flags::FIELD_ID | Flags::ACC_NONE) & flag) == flag; 15404514f5e3Sopenharmony_ci case Opcode::STOBJ_V_V4_V4_ID16: 15414514f5e3Sopenharmony_ci return ((Flags::FIELD_ID | Flags::ACC_NONE) & flag) == flag; 15424514f5e3Sopenharmony_ci case Opcode::STOBJ_V_64_V4_V4_ID16: 15434514f5e3Sopenharmony_ci return ((Flags::FIELD_ID | Flags::ACC_NONE) & flag) == flag; 15444514f5e3Sopenharmony_ci case Opcode::STOBJ_V_OBJ_V4_V4_ID16: 15454514f5e3Sopenharmony_ci return ((Flags::FIELD_ID | Flags::ACC_NONE) & flag) == flag; 15464514f5e3Sopenharmony_ci case Opcode::LDSTATIC_ID16: 15474514f5e3Sopenharmony_ci return ((Flags::FIELD_ID | Flags::INITIALIZE_TYPE | Flags::ACC_WRITE) & flag) == flag; 15484514f5e3Sopenharmony_ci case Opcode::LDSTATIC_64_ID16: 15494514f5e3Sopenharmony_ci return ((Flags::FIELD_ID | Flags::INITIALIZE_TYPE | Flags::ACC_WRITE) & flag) == flag; 15504514f5e3Sopenharmony_ci case Opcode::LDSTATIC_OBJ_ID16: 15514514f5e3Sopenharmony_ci return ((Flags::FIELD_ID | Flags::INITIALIZE_TYPE | Flags::ACC_WRITE) & flag) == flag; 15524514f5e3Sopenharmony_ci case Opcode::STSTATIC_ID16: 15534514f5e3Sopenharmony_ci return ((Flags::FIELD_ID | Flags::INITIALIZE_TYPE | Flags::ACC_READ) & flag) == flag; 15544514f5e3Sopenharmony_ci case Opcode::STSTATIC_64_ID16: 15554514f5e3Sopenharmony_ci return ((Flags::FIELD_ID | Flags::INITIALIZE_TYPE | Flags::ACC_READ) & flag) == flag; 15564514f5e3Sopenharmony_ci case Opcode::STSTATIC_OBJ_ID16: 15574514f5e3Sopenharmony_ci return ((Flags::FIELD_ID | Flags::INITIALIZE_TYPE | Flags::ACC_READ) & flag) == flag; 15584514f5e3Sopenharmony_ci case Opcode::RETURN: 15594514f5e3Sopenharmony_ci return ((Flags::RETURN | Flags::ACC_READ) & flag) == flag; 15604514f5e3Sopenharmony_ci case Opcode::RETURN_64: 15614514f5e3Sopenharmony_ci return ((Flags::RETURN | Flags::ACC_READ) & flag) == flag; 15624514f5e3Sopenharmony_ci case Opcode::RETURN_OBJ: 15634514f5e3Sopenharmony_ci return ((Flags::RETURN | Flags::ACC_READ) & flag) == flag; 15644514f5e3Sopenharmony_ci case Opcode::RETURN_VOID: 15654514f5e3Sopenharmony_ci return ((Flags::RETURN | Flags::ACC_NONE) & flag) == flag; 15664514f5e3Sopenharmony_ci case Opcode::THROW_V8: 15674514f5e3Sopenharmony_ci return ((Flags::ACC_NONE) & flag) == flag; 15684514f5e3Sopenharmony_ci case Opcode::CHECKCAST_ID16: 15694514f5e3Sopenharmony_ci return ((Flags::TYPE_ID | Flags::ACC_READ) & flag) == flag; 15704514f5e3Sopenharmony_ci case Opcode::ISINSTANCE_ID16: 15714514f5e3Sopenharmony_ci return ((Flags::TYPE_ID | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 15724514f5e3Sopenharmony_ci case Opcode::CALL_SHORT_V4_V4_ID16: 15734514f5e3Sopenharmony_ci return ((Flags::METHOD_ID | Flags::CALL | Flags::MAYBE_DYNAMIC | Flags::INITIALIZE_TYPE | 15744514f5e3Sopenharmony_ci Flags::ACC_WRITE) & flag) == flag; 15754514f5e3Sopenharmony_ci case Opcode::CALL_V4_V4_V4_V4_ID16: 15764514f5e3Sopenharmony_ci return ((Flags::METHOD_ID | Flags::CALL | Flags::MAYBE_DYNAMIC | Flags::INITIALIZE_TYPE | 15774514f5e3Sopenharmony_ci Flags::ACC_WRITE) & flag) == flag; 15784514f5e3Sopenharmony_ci case Opcode::CALL_RANGE_V8_ID16: 15794514f5e3Sopenharmony_ci return ((Flags::METHOD_ID | Flags::CALL | Flags::MAYBE_DYNAMIC | Flags::INITIALIZE_TYPE | 15804514f5e3Sopenharmony_ci Flags::ACC_WRITE) & flag) == flag; 15814514f5e3Sopenharmony_ci case Opcode::CALL_ACC_SHORT_V4_IMM4_ID16: 15824514f5e3Sopenharmony_ci return ((Flags::METHOD_ID | Flags::CALL | Flags::MAYBE_DYNAMIC | Flags::ACC_WRITE | Flags::ACC_READ) & 15834514f5e3Sopenharmony_ci flag) == flag; 15844514f5e3Sopenharmony_ci case Opcode::CALL_ACC_V4_V4_V4_IMM4_ID16: 15854514f5e3Sopenharmony_ci return ((Flags::METHOD_ID | Flags::CALL | Flags::MAYBE_DYNAMIC | Flags::ACC_WRITE | Flags::ACC_READ) & 15864514f5e3Sopenharmony_ci flag) == flag; 15874514f5e3Sopenharmony_ci case Opcode::CALL_VIRT_SHORT_V4_V4_ID16: 15884514f5e3Sopenharmony_ci return ((Flags::METHOD_ID | Flags::CALL | Flags::CALL_VIRT | Flags::ACC_WRITE) & flag) == flag; 15894514f5e3Sopenharmony_ci case Opcode::CALL_VIRT_V4_V4_V4_V4_ID16: 15904514f5e3Sopenharmony_ci return ((Flags::METHOD_ID | Flags::CALL | Flags::CALL_VIRT | Flags::ACC_WRITE) & flag) == flag; 15914514f5e3Sopenharmony_ci case Opcode::CALL_VIRT_RANGE_V8_ID16: 15924514f5e3Sopenharmony_ci return ((Flags::METHOD_ID | Flags::CALL | Flags::CALL_VIRT | Flags::ACC_WRITE) & flag) == flag; 15934514f5e3Sopenharmony_ci case Opcode::CALL_VIRT_ACC_SHORT_V4_IMM4_ID16: 15944514f5e3Sopenharmony_ci return ((Flags::METHOD_ID | Flags::CALL | Flags::CALL_VIRT | Flags::ACC_WRITE | Flags::ACC_READ) & 15954514f5e3Sopenharmony_ci flag) == flag; 15964514f5e3Sopenharmony_ci case Opcode::CALL_VIRT_ACC_V4_V4_V4_IMM4_ID16: 15974514f5e3Sopenharmony_ci return ((Flags::METHOD_ID | Flags::CALL | Flags::CALL_VIRT | Flags::ACC_WRITE | Flags::ACC_READ) & 15984514f5e3Sopenharmony_ci flag) == flag; 15994514f5e3Sopenharmony_ci case Opcode::MOV_DYN_V8_V8: 16004514f5e3Sopenharmony_ci return ((Flags::DYNAMIC | Flags::ACC_NONE) & flag) == flag; 16014514f5e3Sopenharmony_ci case Opcode::MOV_DYN_V16_V16: 16024514f5e3Sopenharmony_ci return ((Flags::DYNAMIC | Flags::ACC_NONE) & flag) == flag; 16034514f5e3Sopenharmony_ci case Opcode::LDA_DYN_V8: 16044514f5e3Sopenharmony_ci return ((Flags::DYNAMIC | Flags::ACC_WRITE) & flag) == flag; 16054514f5e3Sopenharmony_ci case Opcode::STA_DYN_V8: 16064514f5e3Sopenharmony_ci return ((Flags::DYNAMIC | Flags::ACC_READ) & flag) == flag; 16074514f5e3Sopenharmony_ci case Opcode::LDAI_DYN_IMM32: 16084514f5e3Sopenharmony_ci return ((Flags::DYNAMIC | Flags::ACC_WRITE) & flag) == flag; 16094514f5e3Sopenharmony_ci case Opcode::FLDAI_DYN_IMM64: 16104514f5e3Sopenharmony_ci return ((Flags::DYNAMIC | Flags::FLOAT | Flags::ACC_WRITE) & flag) == flag; 16114514f5e3Sopenharmony_ci case Opcode::RETURN_DYN: 16124514f5e3Sopenharmony_ci return ((Flags::DYNAMIC | Flags::RETURN | Flags::ACC_READ) & flag) == flag; 16134514f5e3Sopenharmony_ci case Opcode::CALLI_DYN_SHORT_IMM4_V4_V4_V4: 16144514f5e3Sopenharmony_ci return ((Flags::DYNAMIC | Flags::CALL | Flags::ACC_WRITE) & flag) == flag; 16154514f5e3Sopenharmony_ci case Opcode::CALLI_DYN_IMM4_V4_V4_V4_V4_V4: 16164514f5e3Sopenharmony_ci return ((Flags::DYNAMIC | Flags::CALL | Flags::ACC_WRITE) & flag) == flag; 16174514f5e3Sopenharmony_ci case Opcode::CALLI_DYN_RANGE_IMM16_V16: 16184514f5e3Sopenharmony_ci return ((Flags::DYNAMIC | Flags::CALL | Flags::ACC_WRITE) & flag) == flag; 16194514f5e3Sopenharmony_ci case Opcode::FMOVI_PREF_V8_IMM32: 16204514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_NONE) & flag) == flag; 16214514f5e3Sopenharmony_ci case Opcode::I32TOF64_PREF_NONE: 16224514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16234514f5e3Sopenharmony_ci case Opcode::UCMP_PREF_V8: 16244514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16254514f5e3Sopenharmony_ci case Opcode::NOT_PREF_NONE: 16264514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16274514f5e3Sopenharmony_ci case Opcode::ECMA_LDNAN_PREF_NONE: 16284514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 16294514f5e3Sopenharmony_ci case Opcode::FLDAI_PREF_IMM32: 16304514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE) & flag) == flag; 16314514f5e3Sopenharmony_ci case Opcode::U32TOF64_PREF_NONE: 16324514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16334514f5e3Sopenharmony_ci case Opcode::UCMP_64_PREF_V8: 16344514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16354514f5e3Sopenharmony_ci case Opcode::NOT_64_PREF_NONE: 16364514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16374514f5e3Sopenharmony_ci case Opcode::ECMA_LDINFINITY_PREF_NONE: 16384514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 16394514f5e3Sopenharmony_ci case Opcode::FCMPL_PREF_V8: 16404514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16414514f5e3Sopenharmony_ci case Opcode::I64TOF64_PREF_NONE: 16424514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16434514f5e3Sopenharmony_ci case Opcode::DIVU2_PREF_V8: 16444514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16454514f5e3Sopenharmony_ci case Opcode::AND2_PREF_V8: 16464514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16474514f5e3Sopenharmony_ci case Opcode::ECMA_LDGLOBALTHIS_PREF_NONE: 16484514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 16494514f5e3Sopenharmony_ci case Opcode::FCMPG_PREF_V8: 16504514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16514514f5e3Sopenharmony_ci case Opcode::U64TOF64_PREF_NONE: 16524514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16534514f5e3Sopenharmony_ci case Opcode::DIVU2_64_PREF_V8: 16544514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16554514f5e3Sopenharmony_ci case Opcode::AND2_64_PREF_V8: 16564514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16574514f5e3Sopenharmony_ci case Opcode::ECMA_LDUNDEFINED_PREF_NONE: 16584514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 16594514f5e3Sopenharmony_ci case Opcode::FNEG_PREF_NONE: 16604514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16614514f5e3Sopenharmony_ci case Opcode::F64TOI32_PREF_NONE: 16624514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16634514f5e3Sopenharmony_ci case Opcode::MODU2_PREF_V8: 16644514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16654514f5e3Sopenharmony_ci case Opcode::OR2_PREF_V8: 16664514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16674514f5e3Sopenharmony_ci case Opcode::ECMA_LDNULL_PREF_NONE: 16684514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 16694514f5e3Sopenharmony_ci case Opcode::FADD2_PREF_V8: 16704514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16714514f5e3Sopenharmony_ci case Opcode::F64TOI64_PREF_NONE: 16724514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16734514f5e3Sopenharmony_ci case Opcode::MODU2_64_PREF_V8: 16744514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16754514f5e3Sopenharmony_ci case Opcode::OR2_64_PREF_V8: 16764514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16774514f5e3Sopenharmony_ci case Opcode::ECMA_LDSYMBOL_PREF_NONE: 16784514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 16794514f5e3Sopenharmony_ci case Opcode::FSUB2_PREF_V8: 16804514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16814514f5e3Sopenharmony_ci case Opcode::F64TOU32_PREF_NONE: 16824514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16834514f5e3Sopenharmony_ci case Opcode::XOR2_PREF_V8: 16844514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16854514f5e3Sopenharmony_ci case Opcode::ECMA_LDGLOBAL_PREF_NONE: 16864514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 16874514f5e3Sopenharmony_ci case Opcode::FMUL2_PREF_V8: 16884514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16894514f5e3Sopenharmony_ci case Opcode::F64TOU64_PREF_NONE: 16904514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16914514f5e3Sopenharmony_ci case Opcode::XOR2_64_PREF_V8: 16924514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16934514f5e3Sopenharmony_ci case Opcode::ECMA_LDTRUE_PREF_NONE: 16944514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 16954514f5e3Sopenharmony_ci case Opcode::FDIV2_PREF_V8: 16964514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16974514f5e3Sopenharmony_ci case Opcode::I32TOU1_PREF_NONE: 16984514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 16994514f5e3Sopenharmony_ci case Opcode::SHL2_PREF_V8: 17004514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17014514f5e3Sopenharmony_ci case Opcode::ECMA_LDFALSE_PREF_NONE: 17024514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 17034514f5e3Sopenharmony_ci case Opcode::FMOD2_PREF_V8: 17044514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17054514f5e3Sopenharmony_ci case Opcode::I64TOU1_PREF_NONE: 17064514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17074514f5e3Sopenharmony_ci case Opcode::SHL2_64_PREF_V8: 17084514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17094514f5e3Sopenharmony_ci case Opcode::ECMA_THROWDYN_PREF_NONE: 17104514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17114514f5e3Sopenharmony_ci case Opcode::I32TOF32_PREF_NONE: 17124514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17134514f5e3Sopenharmony_ci case Opcode::U32TOU1_PREF_NONE: 17144514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17154514f5e3Sopenharmony_ci case Opcode::SHR2_PREF_V8: 17164514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17174514f5e3Sopenharmony_ci case Opcode::ECMA_TYPEOFDYN_PREF_NONE: 17184514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17194514f5e3Sopenharmony_ci case Opcode::U32TOF32_PREF_NONE: 17204514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17214514f5e3Sopenharmony_ci case Opcode::U64TOU1_PREF_NONE: 17224514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17234514f5e3Sopenharmony_ci case Opcode::SHR2_64_PREF_V8: 17244514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17254514f5e3Sopenharmony_ci case Opcode::ECMA_LDLEXENVDYN_PREF_NONE: 17264514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 17274514f5e3Sopenharmony_ci case Opcode::I64TOF32_PREF_NONE: 17284514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17294514f5e3Sopenharmony_ci case Opcode::I32TOI64_PREF_NONE: 17304514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17314514f5e3Sopenharmony_ci case Opcode::ASHR2_PREF_V8: 17324514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17334514f5e3Sopenharmony_ci case Opcode::ECMA_POPLEXENVDYN_PREF_NONE: 17344514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 17354514f5e3Sopenharmony_ci case Opcode::U64TOF32_PREF_NONE: 17364514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17374514f5e3Sopenharmony_ci case Opcode::I32TOI16_PREF_NONE: 17384514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17394514f5e3Sopenharmony_ci case Opcode::ASHR2_64_PREF_V8: 17404514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17414514f5e3Sopenharmony_ci case Opcode::ECMA_GETUNMAPPEDARGS_PREF_NONE: 17424514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 17434514f5e3Sopenharmony_ci case Opcode::F32TOF64_PREF_NONE: 17444514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17454514f5e3Sopenharmony_ci case Opcode::I32TOU16_PREF_NONE: 17464514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17474514f5e3Sopenharmony_ci case Opcode::XORI_PREF_IMM32: 17484514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17494514f5e3Sopenharmony_ci case Opcode::ECMA_GETPROPITERATOR_PREF_NONE: 17504514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17514514f5e3Sopenharmony_ci case Opcode::F32TOI32_PREF_NONE: 17524514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17534514f5e3Sopenharmony_ci case Opcode::I32TOI8_PREF_NONE: 17544514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17554514f5e3Sopenharmony_ci case Opcode::AND_PREF_V4_V4: 17564514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE) & flag) == flag; 17574514f5e3Sopenharmony_ci case Opcode::ECMA_ASYNCFUNCTIONENTER_PREF_NONE: 17584514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 17594514f5e3Sopenharmony_ci case Opcode::F32TOI64_PREF_NONE: 17604514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17614514f5e3Sopenharmony_ci case Opcode::I32TOU8_PREF_NONE: 17624514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17634514f5e3Sopenharmony_ci case Opcode::OR_PREF_V4_V4: 17644514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE) & flag) == flag; 17654514f5e3Sopenharmony_ci case Opcode::ECMA_LDHOLE_PREF_NONE: 17664514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 17674514f5e3Sopenharmony_ci case Opcode::F32TOU32_PREF_NONE: 17684514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17694514f5e3Sopenharmony_ci case Opcode::I64TOI32_PREF_NONE: 17704514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17714514f5e3Sopenharmony_ci case Opcode::XOR_PREF_V4_V4: 17724514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE) & flag) == flag; 17734514f5e3Sopenharmony_ci case Opcode::ECMA_RETURNUNDEFINED_PREF_NONE: 17744514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::RETURN | Flags::ACC_NONE) & flag) == flag; 17754514f5e3Sopenharmony_ci case Opcode::F32TOU64_PREF_NONE: 17764514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17774514f5e3Sopenharmony_ci case Opcode::U32TOI64_PREF_NONE: 17784514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17794514f5e3Sopenharmony_ci case Opcode::SHL_PREF_V4_V4: 17804514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE) & flag) == flag; 17814514f5e3Sopenharmony_ci case Opcode::ECMA_CREATEEMPTYOBJECT_PREF_NONE: 17824514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 17834514f5e3Sopenharmony_ci case Opcode::F64TOF32_PREF_NONE: 17844514f5e3Sopenharmony_ci return ((Flags::FLOAT | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17854514f5e3Sopenharmony_ci case Opcode::U32TOI16_PREF_NONE: 17864514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17874514f5e3Sopenharmony_ci case Opcode::SHR_PREF_V4_V4: 17884514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE) & flag) == flag; 17894514f5e3Sopenharmony_ci case Opcode::ECMA_CREATEEMPTYARRAY_PREF_NONE: 17904514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 17914514f5e3Sopenharmony_ci case Opcode::U32TOU16_PREF_NONE: 17924514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17934514f5e3Sopenharmony_ci case Opcode::ASHR_PREF_V4_V4: 17944514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE) & flag) == flag; 17954514f5e3Sopenharmony_ci case Opcode::ECMA_GETITERATOR_PREF_NONE: 17964514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17974514f5e3Sopenharmony_ci case Opcode::U32TOI8_PREF_NONE: 17984514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 17994514f5e3Sopenharmony_ci case Opcode::ECMA_THROWTHROWNOTEXISTS_PREF_NONE: 18004514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_NONE) & flag) == flag; 18014514f5e3Sopenharmony_ci case Opcode::U32TOU8_PREF_NONE: 18024514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18034514f5e3Sopenharmony_ci case Opcode::ECMA_THROWPATTERNNONCOERCIBLE_PREF_NONE: 18044514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_NONE) & flag) == flag; 18054514f5e3Sopenharmony_ci case Opcode::U64TOI32_PREF_NONE: 18064514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18074514f5e3Sopenharmony_ci case Opcode::ECMA_LDHOMEOBJECT_PREF_NONE: 18084514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 18094514f5e3Sopenharmony_ci case Opcode::U64TOU32_PREF_NONE: 18104514f5e3Sopenharmony_ci return ((Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18114514f5e3Sopenharmony_ci case Opcode::ECMA_THROWDELETESUPERPROPERTY_PREF_NONE: 18124514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_NONE) & flag) == flag; 18134514f5e3Sopenharmony_ci case Opcode::ECMA_DEBUGGER_PREF_NONE: 18144514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_NONE) & flag) == flag; 18154514f5e3Sopenharmony_ci case Opcode::ECMA_ADD2DYN_PREF_V8: 18164514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18174514f5e3Sopenharmony_ci case Opcode::ECMA_SUB2DYN_PREF_V8: 18184514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18194514f5e3Sopenharmony_ci case Opcode::ECMA_MUL2DYN_PREF_V8: 18204514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18214514f5e3Sopenharmony_ci case Opcode::ECMA_DIV2DYN_PREF_V8: 18224514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18234514f5e3Sopenharmony_ci case Opcode::ECMA_MOD2DYN_PREF_V8: 18244514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18254514f5e3Sopenharmony_ci case Opcode::ECMA_EQDYN_PREF_V8: 18264514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18274514f5e3Sopenharmony_ci case Opcode::ECMA_NOTEQDYN_PREF_V8: 18284514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18294514f5e3Sopenharmony_ci case Opcode::ECMA_LESSDYN_PREF_V8: 18304514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18314514f5e3Sopenharmony_ci case Opcode::ECMA_LESSEQDYN_PREF_V8: 18324514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18334514f5e3Sopenharmony_ci case Opcode::ECMA_GREATERDYN_PREF_V8: 18344514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18354514f5e3Sopenharmony_ci case Opcode::ECMA_GREATEREQDYN_PREF_V8: 18364514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18374514f5e3Sopenharmony_ci case Opcode::ECMA_SHL2DYN_PREF_V8: 18384514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18394514f5e3Sopenharmony_ci case Opcode::ECMA_SHR2DYN_PREF_V8: 18404514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18414514f5e3Sopenharmony_ci case Opcode::ECMA_ASHR2DYN_PREF_V8: 18424514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18434514f5e3Sopenharmony_ci case Opcode::ECMA_AND2DYN_PREF_V8: 18444514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18454514f5e3Sopenharmony_ci case Opcode::ECMA_OR2DYN_PREF_V8: 18464514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18474514f5e3Sopenharmony_ci case Opcode::ECMA_XOR2DYN_PREF_V8: 18484514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18494514f5e3Sopenharmony_ci case Opcode::ECMA_TONUMBER_PREF_V8: 18504514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18514514f5e3Sopenharmony_ci case Opcode::ECMA_NEGDYN_PREF_V8: 18524514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 18534514f5e3Sopenharmony_ci case Opcode::ECMA_NOTDYN_PREF_V8: 18544514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 18554514f5e3Sopenharmony_ci case Opcode::ECMA_INCDYN_PREF_V8: 18564514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 18574514f5e3Sopenharmony_ci case Opcode::ECMA_DECDYN_PREF_V8: 18584514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 18594514f5e3Sopenharmony_ci case Opcode::ECMA_EXPDYN_PREF_V8: 18604514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18614514f5e3Sopenharmony_ci case Opcode::ECMA_ISINDYN_PREF_V8: 18624514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18634514f5e3Sopenharmony_ci case Opcode::ECMA_INSTANCEOFDYN_PREF_V8: 18644514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18654514f5e3Sopenharmony_ci case Opcode::ECMA_STRICTNOTEQDYN_PREF_V8: 18664514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18674514f5e3Sopenharmony_ci case Opcode::ECMA_STRICTEQDYN_PREF_V8: 18684514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18694514f5e3Sopenharmony_ci case Opcode::ECMA_RESUMEGENERATOR_PREF_V8: 18704514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 18714514f5e3Sopenharmony_ci case Opcode::ECMA_GETRESUMEMODE_PREF_V8: 18724514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 18734514f5e3Sopenharmony_ci case Opcode::ECMA_CREATEGENERATOROBJ_PREF_V8: 18744514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 18754514f5e3Sopenharmony_ci case Opcode::ECMA_THROWCONSTASSIGNMENT_PREF_V8: 18764514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_NONE) & flag) == flag; 18774514f5e3Sopenharmony_ci case Opcode::ECMA_GETTEMPLATEOBJECT_PREF_V8: 18784514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 18794514f5e3Sopenharmony_ci case Opcode::ECMA_GETNEXTPROPNAME_PREF_V8: 18804514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 18814514f5e3Sopenharmony_ci case Opcode::ECMA_CALLARG0DYN_PREF_V8: 18824514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 18834514f5e3Sopenharmony_ci case Opcode::ECMA_THROWIFNOTOBJECT_PREF_V8: 18844514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_NONE) & flag) == flag; 18854514f5e3Sopenharmony_ci case Opcode::ECMA_ITERNEXT_PREF_V8: 18864514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 18874514f5e3Sopenharmony_ci case Opcode::ECMA_CLOSEITERATOR_PREF_V8: 18884514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 18894514f5e3Sopenharmony_ci case Opcode::ECMA_COPYMODULE_PREF_V8: 18904514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 18914514f5e3Sopenharmony_ci case Opcode::ECMA_SUPERCALLSPREAD_PREF_V8: 18924514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18934514f5e3Sopenharmony_ci case Opcode::ECMA_DELOBJPROP_PREF_V8_V8: 18944514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 18954514f5e3Sopenharmony_ci case Opcode::ECMA_NEWOBJSPREADDYN_PREF_V8_V8: 18964514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18974514f5e3Sopenharmony_ci case Opcode::ECMA_CREATEITERRESULTOBJ_PREF_V8_V8: 18984514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 18994514f5e3Sopenharmony_ci case Opcode::ECMA_SUSPENDGENERATOR_PREF_V8_V8: 19004514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19014514f5e3Sopenharmony_ci case Opcode::ECMA_ASYNCFUNCTIONAWAITUNCAUGHT_PREF_V8_V8: 19024514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19034514f5e3Sopenharmony_ci case Opcode::ECMA_THROWUNDEFINEDIFHOLE_PREF_V8_V8: 19044514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_NONE) & flag) == flag; 19054514f5e3Sopenharmony_ci case Opcode::ECMA_CALLARG1DYN_PREF_V8_V8: 19064514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19074514f5e3Sopenharmony_ci case Opcode::ECMA_COPYDATAPROPERTIES_PREF_V8_V8: 19084514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19094514f5e3Sopenharmony_ci case Opcode::ECMA_STARRAYSPREAD_PREF_V8_V8: 19104514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 19114514f5e3Sopenharmony_ci case Opcode::ECMA_GETITERATORNEXT_PREF_V8_V8: 19124514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19134514f5e3Sopenharmony_ci case Opcode::ECMA_SETOBJECTWITHPROTO_PREF_V8_V8: 19144514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_NONE) & flag) == flag; 19154514f5e3Sopenharmony_ci case Opcode::ECMA_LDOBJBYVALUE_PREF_V8_V8: 19164514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19174514f5e3Sopenharmony_ci case Opcode::ECMA_STOBJBYVALUE_PREF_V8_V8: 19184514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 19194514f5e3Sopenharmony_ci case Opcode::ECMA_STOWNBYVALUE_PREF_V8_V8: 19204514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 19214514f5e3Sopenharmony_ci case Opcode::ECMA_LDSUPERBYVALUE_PREF_V8_V8: 19224514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19234514f5e3Sopenharmony_ci case Opcode::ECMA_STSUPERBYVALUE_PREF_V8_V8: 19244514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 19254514f5e3Sopenharmony_ci case Opcode::ECMA_LDOBJBYINDEX_PREF_V8_IMM32: 19264514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19274514f5e3Sopenharmony_ci case Opcode::ECMA_STOBJBYINDEX_PREF_V8_IMM32: 19284514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 19294514f5e3Sopenharmony_ci case Opcode::ECMA_STOWNBYINDEX_PREF_V8_IMM32: 19304514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 19314514f5e3Sopenharmony_ci case Opcode::ECMA_CALLSPREADDYN_PREF_V8_V8_V8: 19324514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19334514f5e3Sopenharmony_ci case Opcode::ECMA_ASYNCFUNCTIONRESOLVE_PREF_V8_V8_V8: 19344514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19354514f5e3Sopenharmony_ci case Opcode::ECMA_ASYNCFUNCTIONREJECT_PREF_V8_V8_V8: 19364514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19374514f5e3Sopenharmony_ci case Opcode::ECMA_CALLARGS2DYN_PREF_V8_V8_V8: 19384514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19394514f5e3Sopenharmony_ci case Opcode::ECMA_CALLARGS3DYN_PREF_V8_V8_V8_V8: 19404514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19414514f5e3Sopenharmony_ci case Opcode::ECMA_DEFINEGETTERSETTERBYVALUE_PREF_V8_V8_V8_V8: 19424514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 19434514f5e3Sopenharmony_ci case Opcode::ECMA_NEWOBJDYNRANGE_PREF_IMM16_V8: 19444514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19454514f5e3Sopenharmony_ci case Opcode::ECMA_CALLRANGEDYN_PREF_IMM16_V8: 19464514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19474514f5e3Sopenharmony_ci case Opcode::ECMA_CALLTHISRANGEDYN_PREF_IMM16_V8: 19484514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19494514f5e3Sopenharmony_ci case Opcode::ECMA_SUPERCALL_PREF_IMM16_V8: 19504514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 19514514f5e3Sopenharmony_ci case Opcode::ECMA_CREATEOBJECTWITHEXCLUDEDKEYS_PREF_IMM16_V8_V8: 19524514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19534514f5e3Sopenharmony_ci case Opcode::ECMA_DEFINEFUNCDYN_PREF_ID16_IMM16_V8: 19544514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::METHOD_ID | Flags::ACC_WRITE) & flag) == flag; 19554514f5e3Sopenharmony_ci case Opcode::ECMA_DEFINENCFUNCDYN_PREF_ID16_IMM16_V8: 19564514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::METHOD_ID | Flags::ACC_WRITE | Flags::ACC_READ) & 19574514f5e3Sopenharmony_ci flag) == flag; 19584514f5e3Sopenharmony_ci case Opcode::ECMA_DEFINEGENERATORFUNC_PREF_ID16_IMM16_V8: 19594514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::METHOD_ID | Flags::ACC_WRITE) & flag) == flag; 19604514f5e3Sopenharmony_ci case Opcode::ECMA_DEFINEASYNCFUNC_PREF_ID16_IMM16_V8: 19614514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::METHOD_ID | Flags::ACC_WRITE) & flag) == flag; 19624514f5e3Sopenharmony_ci case Opcode::ECMA_DEFINEMETHOD_PREF_ID16_IMM16_V8: 19634514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::METHOD_ID | Flags::ACC_WRITE | Flags::ACC_READ) & 19644514f5e3Sopenharmony_ci flag) == flag; 19654514f5e3Sopenharmony_ci case Opcode::ECMA_NEWLEXENVDYN_PREF_IMM16: 19664514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19674514f5e3Sopenharmony_ci case Opcode::ECMA_COPYRESTARGS_PREF_IMM16: 19684514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19694514f5e3Sopenharmony_ci case Opcode::ECMA_CREATEARRAYWITHBUFFER_PREF_IMM16: 19704514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19714514f5e3Sopenharmony_ci case Opcode::ECMA_CREATEOBJECTHAVINGMETHOD_PREF_IMM16: 19724514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 19734514f5e3Sopenharmony_ci case Opcode::ECMA_THROWIFSUPERNOTCORRECTCALL_PREF_IMM16: 19744514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 19754514f5e3Sopenharmony_ci case Opcode::ECMA_CREATEOBJECTWITHBUFFER_PREF_IMM16: 19764514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19774514f5e3Sopenharmony_ci case Opcode::ECMA_LDLEXVARDYN_PREF_IMM4_IMM4: 19784514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19794514f5e3Sopenharmony_ci case Opcode::ECMA_LDLEXVARDYN_PREF_IMM8_IMM8: 19804514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19814514f5e3Sopenharmony_ci case Opcode::ECMA_LDLEXVARDYN_PREF_IMM16_IMM16: 19824514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19834514f5e3Sopenharmony_ci case Opcode::ECMA_STLEXVARDYN_PREF_IMM4_IMM4_V8: 19844514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19854514f5e3Sopenharmony_ci case Opcode::ECMA_STLEXVARDYN_PREF_IMM8_IMM8_V8: 19864514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19874514f5e3Sopenharmony_ci case Opcode::ECMA_STLEXVARDYN_PREF_IMM16_IMM16_V8: 19884514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 19894514f5e3Sopenharmony_ci case Opcode::ECMA_DEFINECLASSWITHBUFFER_PREF_ID16_IMM16_IMM16_V8_V8: 19904514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::METHOD_ID | Flags::ACC_WRITE) & flag) == flag; 19914514f5e3Sopenharmony_ci case Opcode::ECMA_GETMODULENAMESPACE_PREF_ID32: 19924514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::STRING_ID | Flags::ACC_WRITE) & flag) == flag; 19934514f5e3Sopenharmony_ci case Opcode::ECMA_STMODULEVAR_PREF_ID32: 19944514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::STRING_ID | Flags::ACC_READ) & flag) == flag; 19954514f5e3Sopenharmony_ci case Opcode::ECMA_TRYLDGLOBALBYNAME_PREF_ID32: 19964514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::STRING_ID | Flags::ACC_WRITE) & flag) == flag; 19974514f5e3Sopenharmony_ci case Opcode::ECMA_TRYSTGLOBALBYNAME_PREF_ID32: 19984514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::STRING_ID | Flags::ACC_READ) & flag) == flag; 19994514f5e3Sopenharmony_ci case Opcode::ECMA_LDGLOBALVAR_PREF_ID32: 20004514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::STRING_ID | Flags::ACC_WRITE) & flag) == flag; 20014514f5e3Sopenharmony_ci case Opcode::ECMA_STGLOBALVAR_PREF_ID32: 20024514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::STRING_ID | Flags::ACC_READ) & flag) == flag; 20034514f5e3Sopenharmony_ci case Opcode::ECMA_LDOBJBYNAME_PREF_ID32_V8: 20044514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::STRING_ID | Flags::ACC_WRITE) & flag) == flag; 20054514f5e3Sopenharmony_ci case Opcode::ECMA_STOBJBYNAME_PREF_ID32_V8: 20064514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::STRING_ID | Flags::ACC_READ) & flag) == flag; 20074514f5e3Sopenharmony_ci case Opcode::ECMA_STOWNBYNAME_PREF_ID32_V8: 20084514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::STRING_ID | Flags::ACC_READ) & flag) == flag; 20094514f5e3Sopenharmony_ci case Opcode::ECMA_LDSUPERBYNAME_PREF_ID32_V8: 20104514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::STRING_ID | Flags::ACC_WRITE) & flag) == flag; 20114514f5e3Sopenharmony_ci case Opcode::ECMA_STSUPERBYNAME_PREF_ID32_V8: 20124514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::STRING_ID | Flags::ACC_READ) & flag) == flag; 20134514f5e3Sopenharmony_ci case Opcode::ECMA_LDMODULEVAR_PREF_ID32_IMM8: 20144514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::STRING_ID | Flags::ACC_WRITE) & flag) == flag; 20154514f5e3Sopenharmony_ci case Opcode::ECMA_CREATEREGEXPWITHLITERAL_PREF_ID32_IMM8: 20164514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::STRING_ID | Flags::ACC_WRITE) & flag) == flag; 20174514f5e3Sopenharmony_ci case Opcode::ECMA_ISTRUE_PREF_NONE: 20184514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 20194514f5e3Sopenharmony_ci case Opcode::ECMA_ISFALSE_PREF_NONE: 20204514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 20214514f5e3Sopenharmony_ci case Opcode::ECMA_STCONSTTOGLOBALRECORD_PREF_ID32: 20224514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::STRING_ID | Flags::ACC_READ) & flag) == flag; 20234514f5e3Sopenharmony_ci case Opcode::ECMA_STLETTOGLOBALRECORD_PREF_ID32: 20244514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::STRING_ID | Flags::ACC_READ) & flag) == flag; 20254514f5e3Sopenharmony_ci case Opcode::ECMA_STCLASSTOGLOBALRECORD_PREF_ID32: 20264514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::STRING_ID | Flags::ACC_READ) & flag) == flag; 20274514f5e3Sopenharmony_ci case Opcode::ECMA_STOWNBYVALUEWITHNAMESET_PREF_V8_V8: 20284514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 20294514f5e3Sopenharmony_ci case Opcode::ECMA_STOWNBYNAMEWITHNAMESET_PREF_ID32_V8: 20304514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::STRING_ID | Flags::ACC_READ) & flag) == flag; 20314514f5e3Sopenharmony_ci case Opcode::ECMA_LDFUNCTION_PREF_NONE: 20324514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 20334514f5e3Sopenharmony_ci case Opcode::ECMA_NEWLEXENVWITHNAMEDYN_PREF_IMM16_IMM16: 20344514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 20354514f5e3Sopenharmony_ci case Opcode::ECMA_LDBIGINT_PREF_ID32: 20364514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::STRING_ID | Flags::ACC_WRITE) & flag) == flag; 20374514f5e3Sopenharmony_ci case Opcode::ECMA_TONUMERIC_PREF_V8: 20384514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE | Flags::ACC_READ) & flag) == flag; 20394514f5e3Sopenharmony_ci case Opcode::ECMA_CREATEASYNCGENERATOROBJ_PREF_V8: 20404514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 20414514f5e3Sopenharmony_ci case Opcode::ECMA_ASYNCGENERATORRESOLVE_PREF_V8_V8_V8: 20424514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::ACC_WRITE) & flag) == flag; 20434514f5e3Sopenharmony_ci case Opcode::ECMA_DEFINEASYNCGENERATORFUNC_PREF_ID16_IMM16_V8: 20444514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE | Flags::METHOD_ID | Flags::ACC_WRITE) & flag) == flag; 20454514f5e3Sopenharmony_ci case Opcode::ECMA_DYNAMICIMPORT_PREF_V8: 20464514f5e3Sopenharmony_ci return ((Flags::ACC_READ | Flags::ACC_WRITE) & flag) == flag; 20474514f5e3Sopenharmony_ci case Opcode::ECMA_LDPATCHVAR_PREF_IMM16: 20484514f5e3Sopenharmony_ci return (Flags::ACC_WRITE & flag) == flag; 20494514f5e3Sopenharmony_ci case Opcode::ECMA_STPATCHVAR_PREF_IMM16: 20504514f5e3Sopenharmony_ci return (Flags::ACC_READ & flag) == flag; 20514514f5e3Sopenharmony_ci case Opcode::ECMA_ASYNCGENERATORREJECT_PREF_V8_V8: 20524514f5e3Sopenharmony_ci return (Flags::ACC_WRITE & flag) == flag; 20534514f5e3Sopenharmony_ci default: 20544514f5e3Sopenharmony_ci return false; 20554514f5e3Sopenharmony_ci } 20564514f5e3Sopenharmony_ci LOG_ECMA(FATAL) << "this branch is unreachable"; 20574514f5e3Sopenharmony_ci UNREACHABLE(); 20584514f5e3Sopenharmony_ci } 20594514f5e3Sopenharmony_ci}; 20604514f5e3Sopenharmony_ci} // panda::ecmascript 20614514f5e3Sopenharmony_ci 20624514f5e3Sopenharmony_ci#endif // ECMASCRIPT_JSPANDAFILE_BYTECODE_INST_OLD_INSTRUCTION_H