blob: bb7851427831187d439829b6fd7138b0612cddd9 [file]
//-------------------------------------------------------------------------------------------------------
// Copyright (C) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
//-------------------------------------------------------------------------------------------------------
#pragma once
#ifdef ASMJS_PLAT
namespace Js
{
class OpCodeUtilAsmJs
{
public:
static char16 const * GetOpCodeName(OpCodeAsmJs op);
static OpLayoutTypeAsmJs GetOpCodeLayout(OpCodeAsmJs op);
static bool IsValidByteCodeOpcode(OpCodeAsmJs op);
static bool IsValidOpcode(OpCodeAsmJs op);
private:
#if DBG_DUMP || ENABLE_DEBUG_CONFIG_OPTIONS
static char16 const * const OpCodeAsmJsNames[(int)Js::OpCodeAsmJs::MaxByteSizedOpcodes + 1];
static char16 const * const ExtendedOpCodeAsmJsNames[];
#endif
static OpLayoutTypeAsmJs const OpCodeAsmJsLayouts[];
static OpLayoutTypeAsmJs const ExtendedOpCodeAsmJsLayouts[];
};
};
#endif