diff options
Diffstat (limited to 'js/src/jit/shared/LOpcodes-shared.h')
-rw-r--r-- | js/src/jit/shared/LOpcodes-shared.h | 441 |
1 files changed, 441 insertions, 0 deletions
diff --git a/js/src/jit/shared/LOpcodes-shared.h b/js/src/jit/shared/LOpcodes-shared.h new file mode 100644 index 000000000..bb04553a6 --- /dev/null +++ b/js/src/jit/shared/LOpcodes-shared.h @@ -0,0 +1,441 @@ +/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- + * vim: set ts=8 sts=4 et sw=4 tw=99: + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#ifndef jit_shared_LOpcodes_shared_h +#define jit_shared_LOpcodes_shared_h + +#define LIR_COMMON_OPCODE_LIST(_) \ + _(Unbox) \ + _(Box) \ + _(UnboxFloatingPoint) \ + _(OsiPoint) \ + _(MoveGroup) \ + _(Integer) \ + _(Integer64) \ + _(Pointer) \ + _(Double) \ + _(Float32) \ + _(SimdBox) \ + _(SimdUnbox) \ + _(SimdSplatX16) \ + _(SimdSplatX8) \ + _(SimdSplatX4) \ + _(Simd128Int) \ + _(Simd128Float) \ + _(SimdAllTrue) \ + _(SimdAnyTrue) \ + _(SimdReinterpretCast) \ + _(SimdExtractElementI) \ + _(SimdExtractElementU2D) \ + _(SimdExtractElementB) \ + _(SimdExtractElementF) \ + _(SimdInsertElementI) \ + _(SimdInsertElementF) \ + _(SimdGeneralShuffleI) \ + _(SimdGeneralShuffleF) \ + _(SimdSwizzleI) \ + _(SimdSwizzleF) \ + _(SimdShuffle) \ + _(SimdShuffleX4) \ + _(SimdUnaryArithIx16) \ + _(SimdUnaryArithIx8) \ + _(SimdUnaryArithIx4) \ + _(SimdUnaryArithFx4) \ + _(SimdBinaryCompIx16) \ + _(SimdBinaryCompIx8) \ + _(SimdBinaryCompIx4) \ + _(SimdBinaryCompFx4) \ + _(SimdBinaryArithIx16) \ + _(SimdBinaryArithIx8) \ + _(SimdBinaryArithIx4) \ + _(SimdBinaryArithFx4) \ + _(SimdBinarySaturating) \ + _(SimdBinaryBitwise) \ + _(SimdShift) \ + _(SimdSelect) \ + _(Value) \ + _(CloneLiteral) \ + _(Parameter) \ + _(Callee) \ + _(IsConstructing) \ + _(TableSwitch) \ + _(TableSwitchV) \ + _(Goto) \ + _(NewArray) \ + _(NewArrayCopyOnWrite) \ + _(NewArrayDynamicLength) \ + _(NewTypedArray) \ + _(NewTypedArrayDynamicLength) \ + _(ArraySplice) \ + _(NewObject) \ + _(NewTypedObject) \ + _(NewNamedLambdaObject) \ + _(NewCallObject) \ + _(NewSingletonCallObject) \ + _(NewStringObject) \ + _(NewDerivedTypedObject) \ + _(InitElem) \ + _(InitElemGetterSetter) \ + _(MutateProto) \ + _(InitProp) \ + _(InitPropGetterSetter) \ + _(CheckOverRecursed) \ + _(DefVar) \ + _(DefLexical) \ + _(DefFun) \ + _(CallKnown) \ + _(CallGeneric) \ + _(CallNative) \ + _(ApplyArgsGeneric) \ + _(ApplyArrayGeneric) \ + _(Bail) \ + _(Unreachable) \ + _(EncodeSnapshot) \ + _(GetDynamicName) \ + _(CallDirectEval) \ + _(StackArgT) \ + _(StackArgV) \ + _(CreateThis) \ + _(CreateThisWithProto) \ + _(CreateThisWithTemplate) \ + _(CreateArgumentsObject) \ + _(GetArgumentsObjectArg) \ + _(SetArgumentsObjectArg) \ + _(ReturnFromCtor) \ + _(ComputeThis) \ + _(BitNotI) \ + _(BitNotV) \ + _(BitOpI) \ + _(BitOpI64) \ + _(BitOpV) \ + _(ShiftI) \ + _(ShiftI64) \ + _(SignExtend) \ + _(UrshD) \ + _(Return) \ + _(Throw) \ + _(Phi) \ + _(TestIAndBranch) \ + _(TestI64AndBranch) \ + _(TestDAndBranch) \ + _(TestFAndBranch) \ + _(TestVAndBranch) \ + _(TestOAndBranch) \ + _(FunctionDispatch) \ + _(ObjectGroupDispatch) \ + _(Compare) \ + _(CompareAndBranch) \ + _(CompareI64) \ + _(CompareI64AndBranch) \ + _(CompareD) \ + _(CompareDAndBranch) \ + _(CompareF) \ + _(CompareFAndBranch) \ + _(CompareS) \ + _(CompareStrictS) \ + _(CompareB) \ + _(CompareBAndBranch) \ + _(CompareBitwise) \ + _(CompareBitwiseAndBranch) \ + _(CompareVM) \ + _(BitAndAndBranch) \ + _(IsNullOrLikeUndefinedV) \ + _(IsNullOrLikeUndefinedT) \ + _(IsNullOrLikeUndefinedAndBranchV)\ + _(IsNullOrLikeUndefinedAndBranchT)\ + _(MinMaxI) \ + _(MinMaxD) \ + _(MinMaxF) \ + _(NegI) \ + _(NegD) \ + _(NegF) \ + _(AbsI) \ + _(AbsD) \ + _(AbsF) \ + _(ClzI) \ + _(ClzI64) \ + _(CtzI) \ + _(CtzI64) \ + _(PopcntI) \ + _(PopcntI64) \ + _(SqrtD) \ + _(SqrtF) \ + _(CopySignD) \ + _(CopySignF) \ + _(Atan2D) \ + _(Hypot) \ + _(PowI) \ + _(PowD) \ + _(PowHalfD) \ + _(Random) \ + _(MathFunctionD) \ + _(MathFunctionF) \ + _(NotI) \ + _(NotI64) \ + _(NotD) \ + _(NotF) \ + _(NotO) \ + _(NotV) \ + _(AddI) \ + _(AddI64) \ + _(SubI) \ + _(SubI64) \ + _(MulI) \ + _(MulI64) \ + _(MathD) \ + _(MathF) \ + _(DivI) \ + _(DivPowTwoI) \ + _(ModI) \ + _(ModPowTwoI) \ + _(ModD) \ + _(BinaryV) \ + _(Concat) \ + _(CharCodeAt) \ + _(FromCharCode) \ + _(FromCodePoint) \ + _(SinCos) \ + _(StringSplit) \ + _(Int32ToDouble) \ + _(Float32ToDouble) \ + _(DoubleToFloat32) \ + _(Int32ToFloat32) \ + _(ValueToDouble) \ + _(ValueToInt32) \ + _(ValueToFloat32) \ + _(DoubleToInt32) \ + _(Float32ToInt32) \ + _(TruncateDToInt32) \ + _(TruncateFToInt32) \ + _(WrapInt64ToInt32) \ + _(ExtendInt32ToInt64) \ + _(BooleanToString) \ + _(IntToString) \ + _(DoubleToString) \ + _(ValueToString) \ + _(ValueToObjectOrNull) \ + _(Int32x4ToFloat32x4) \ + _(Float32x4ToInt32x4) \ + _(Float32x4ToUint32x4) \ + _(Start) \ + _(NaNToZero) \ + _(OsrEntry) \ + _(OsrValue) \ + _(OsrEnvironmentChain) \ + _(OsrReturnValue) \ + _(OsrArgumentsObject) \ + _(RegExp) \ + _(RegExpMatcher) \ + _(RegExpSearcher) \ + _(RegExpTester) \ + _(RegExpPrototypeOptimizable) \ + _(RegExpInstanceOptimizable) \ + _(GetFirstDollarIndex) \ + _(StringReplace) \ + _(Substr) \ + _(BinarySharedStub) \ + _(UnarySharedStub) \ + _(NullarySharedStub) \ + _(Lambda) \ + _(LambdaArrow) \ + _(LambdaForSingleton) \ + _(KeepAliveObject) \ + _(Slots) \ + _(Elements) \ + _(ConvertElementsToDoubles) \ + _(MaybeToDoubleElement) \ + _(MaybeCopyElementsForWrite) \ + _(LoadSlotV) \ + _(LoadSlotT) \ + _(StoreSlotV) \ + _(StoreSlotT) \ + _(GuardShape) \ + _(GuardReceiverPolymorphic) \ + _(GuardObjectGroup) \ + _(GuardObjectIdentity) \ + _(GuardClass) \ + _(GuardUnboxedExpando) \ + _(LoadUnboxedExpando) \ + _(TypeBarrierV) \ + _(TypeBarrierO) \ + _(MonitorTypes) \ + _(PostWriteBarrierO) \ + _(PostWriteBarrierV) \ + _(PostWriteElementBarrierO) \ + _(PostWriteElementBarrierV) \ + _(InitializedLength) \ + _(SetInitializedLength) \ + _(UnboxedArrayLength) \ + _(UnboxedArrayInitializedLength) \ + _(IncrementUnboxedArrayInitializedLength) \ + _(SetUnboxedArrayInitializedLength) \ + _(BoundsCheck) \ + _(BoundsCheckRange) \ + _(BoundsCheckLower) \ + _(LoadElementV) \ + _(LoadElementT) \ + _(LoadElementHole) \ + _(LoadUnboxedScalar) \ + _(LoadUnboxedPointerV) \ + _(LoadUnboxedPointerT) \ + _(UnboxObjectOrNull) \ + _(StoreElementV) \ + _(StoreElementT) \ + _(StoreUnboxedScalar) \ + _(StoreUnboxedPointer) \ + _(ConvertUnboxedObjectToNative) \ + _(ArrayPopShiftV) \ + _(ArrayPopShiftT) \ + _(ArrayPushV) \ + _(ArrayPushT) \ + _(ArraySlice) \ + _(ArrayJoin) \ + _(StoreElementHoleV) \ + _(StoreElementHoleT) \ + _(FallibleStoreElementV) \ + _(FallibleStoreElementT) \ + _(LoadTypedArrayElementHole) \ + _(LoadTypedArrayElementStatic) \ + _(StoreTypedArrayElementHole) \ + _(StoreTypedArrayElementStatic) \ + _(AtomicIsLockFree) \ + _(GuardSharedTypedArray) \ + _(CompareExchangeTypedArrayElement) \ + _(AtomicExchangeTypedArrayElement) \ + _(AtomicTypedArrayElementBinop) \ + _(AtomicTypedArrayElementBinopForEffect) \ + _(EffectiveAddress) \ + _(ClampIToUint8) \ + _(ClampDToUint8) \ + _(ClampVToUint8) \ + _(LoadFixedSlotV) \ + _(LoadFixedSlotT) \ + _(LoadFixedSlotAndUnbox) \ + _(StoreFixedSlotV) \ + _(StoreFixedSlotT) \ + _(FunctionEnvironment) \ + _(GetPropertyCacheV) \ + _(GetPropertyCacheT) \ + _(GetPropertyPolymorphicV) \ + _(GetPropertyPolymorphicT) \ + _(BindNameCache) \ + _(CallBindVar) \ + _(CallGetProperty) \ + _(GetNameCache) \ + _(CallGetIntrinsicValue) \ + _(CallGetElement) \ + _(CallSetElement) \ + _(CallInitElementArray) \ + _(CallSetProperty) \ + _(CallDeleteProperty) \ + _(CallDeleteElement) \ + _(SetPropertyCache) \ + _(SetPropertyPolymorphicV) \ + _(SetPropertyPolymorphicT) \ + _(CallIteratorStartV) \ + _(CallIteratorStartO) \ + _(IteratorStartO) \ + _(IteratorMore) \ + _(IsNoIterAndBranch) \ + _(IteratorEnd) \ + _(ArrayLength) \ + _(SetArrayLength) \ + _(GetNextEntryForIterator) \ + _(TypedArrayLength) \ + _(TypedArrayElements) \ + _(SetDisjointTypedElements) \ + _(TypedObjectDescr) \ + _(TypedObjectElements) \ + _(SetTypedObjectOffset) \ + _(StringLength) \ + _(ArgumentsLength) \ + _(GetFrameArgument) \ + _(SetFrameArgumentT) \ + _(SetFrameArgumentC) \ + _(SetFrameArgumentV) \ + _(RunOncePrologue) \ + _(Rest) \ + _(TypeOfV) \ + _(ToAsync) \ + _(ToIdV) \ + _(Floor) \ + _(FloorF) \ + _(Ceil) \ + _(CeilF) \ + _(Round) \ + _(RoundF) \ + _(In) \ + _(InArray) \ + _(InstanceOfO) \ + _(InstanceOfV) \ + _(CallInstanceOf) \ + _(InterruptCheck) \ + _(Rotate) \ + _(RotateI64) \ + _(GetDOMProperty) \ + _(GetDOMMemberV) \ + _(GetDOMMemberT) \ + _(SetDOMProperty) \ + _(CallDOMNative) \ + _(IsCallable) \ + _(IsConstructor) \ + _(IsObject) \ + _(IsObjectAndBranch) \ + _(HasClass) \ + _(RecompileCheck) \ + _(MemoryBarrier) \ + _(AssertRangeI) \ + _(AssertRangeD) \ + _(AssertRangeF) \ + _(AssertRangeV) \ + _(AssertResultV) \ + _(AssertResultT) \ + _(LexicalCheck) \ + _(ThrowRuntimeLexicalError) \ + _(GlobalNameConflictsCheck) \ + _(Debugger) \ + _(NewTarget) \ + _(ArrowNewTarget) \ + _(CheckReturn) \ + _(CheckIsObj) \ + _(CheckObjCoercible) \ + _(DebugCheckSelfHosted) \ + _(AsmJSLoadHeap) \ + _(AsmJSStoreHeap) \ + _(AsmJSCompareExchangeHeap) \ + _(AsmJSAtomicExchangeHeap) \ + _(AsmJSAtomicBinopHeap) \ + _(AsmJSAtomicBinopHeapForEffect)\ + _(WasmTruncateToInt32) \ + _(WasmTrap) \ + _(WasmReinterpret) \ + _(WasmReinterpretToI64) \ + _(WasmReinterpretFromI64) \ + _(WasmSelect) \ + _(WasmSelectI64) \ + _(WasmBoundsCheck) \ + _(WasmAddOffset) \ + _(WasmLoad) \ + _(WasmLoadI64) \ + _(WasmStore) \ + _(WasmStoreI64) \ + _(WasmLoadGlobalVar) \ + _(WasmLoadGlobalVarI64) \ + _(WasmStoreGlobalVar) \ + _(WasmStoreGlobalVarI64) \ + _(WasmParameter) \ + _(WasmParameterI64) \ + _(WasmReturn) \ + _(WasmReturnI64) \ + _(WasmReturnVoid) \ + _(WasmStackArg) \ + _(WasmStackArgI64) \ + _(WasmCall) \ + _(WasmCallI64) \ + _(WasmUint32ToDouble) \ + _(WasmUint32ToFloat32) + +#endif /* jit_shared_LOpcodes_shared_h */ |