diff options
Diffstat (limited to 'deps/v8/src/compiler/opcodes.h')
-rw-r--r-- | deps/v8/src/compiler/opcodes.h | 226 |
1 files changed, 125 insertions, 101 deletions
diff --git a/deps/v8/src/compiler/opcodes.h b/deps/v8/src/compiler/opcodes.h index c1b5945e60..5ac2012350 100644 --- a/deps/v8/src/compiler/opcodes.h +++ b/deps/v8/src/compiler/opcodes.h @@ -134,7 +134,8 @@ V(JSStoreGlobal) \ V(JSDeleteProperty) \ V(JSHasProperty) \ - V(JSInstanceOf) + V(JSInstanceOf) \ + V(JSOrdinaryHasInstance) #define JS_CONTEXT_OP_LIST(V) \ V(JSLoadContext) \ @@ -150,10 +151,8 @@ V(JSCallFunction) \ V(JSCallRuntime) \ V(JSConvertReceiver) \ - V(JSForInDone) \ V(JSForInNext) \ V(JSForInPrepare) \ - V(JSForInStep) \ V(JSLoadMessage) \ V(JSStoreMessage) \ V(JSGeneratorStore) \ @@ -181,7 +180,8 @@ V(ChangeTaggedToBit) \ V(ChangeBitToTagged) \ V(TruncateTaggedToWord32) \ - V(TruncateTaggedToFloat64) + V(TruncateTaggedToFloat64) \ + V(TruncateTaggedToBit) #define SIMPLIFIED_CHECKED_OP_LIST(V) \ V(CheckedInt32Add) \ @@ -191,12 +191,15 @@ V(CheckedUint32Div) \ V(CheckedUint32Mod) \ V(CheckedInt32Mul) \ + V(CheckedInt32ToTaggedSigned) \ V(CheckedUint32ToInt32) \ + V(CheckedUint32ToTaggedSigned) \ V(CheckedFloat64ToInt32) \ V(CheckedTaggedSignedToInt32) \ V(CheckedTaggedToInt32) \ V(CheckedTruncateTaggedToWord32) \ - V(CheckedTaggedToFloat64) + V(CheckedTaggedToFloat64) \ + V(CheckedTaggedToTaggedSigned) #define SIMPLIFIED_COMPARE_BINOP_LIST(V) \ V(NumberEqual) \ @@ -270,6 +273,7 @@ V(NumberTan) \ V(NumberTanh) \ V(NumberTrunc) \ + V(NumberToBoolean) \ V(NumberToInt32) \ V(NumberToUint32) \ V(NumberSilenceNaN) @@ -281,13 +285,14 @@ V(BooleanNot) \ V(StringCharCodeAt) \ V(StringFromCharCode) \ + V(StringFromCodePoint) \ V(CheckBounds) \ V(CheckIf) \ V(CheckMaps) \ V(CheckNumber) \ V(CheckString) \ - V(CheckTaggedPointer) \ - V(CheckTaggedSigned) \ + V(CheckSmi) \ + V(CheckHeapObject) \ V(CheckFloat64Hole) \ V(CheckTaggedHole) \ V(ConvertTaggedHoleToUndefined) \ @@ -306,6 +311,7 @@ V(ObjectIsSmi) \ V(ObjectIsString) \ V(ObjectIsUndetectable) \ + V(ArrayBufferWasNeutered) \ V(EnsureWritableFastElements) \ V(MaybeGrowFastElements) \ V(TransitionElementsKind) @@ -338,59 +344,131 @@ V(Float64LessThan) \ V(Float64LessThanOrEqual) +#define MACHINE_UNOP_32_LIST(V) \ + V(Word32Clz) \ + V(Word32Ctz) \ + V(Word32ReverseBits) \ + V(Word32ReverseBytes) + +#define MACHINE_BINOP_32_LIST(V) \ + V(Word32And) \ + V(Word32Or) \ + V(Word32Xor) \ + V(Word32Shl) \ + V(Word32Shr) \ + V(Word32Sar) \ + V(Word32Ror) \ + V(Int32Add) \ + V(Int32AddWithOverflow) \ + V(Int32Sub) \ + V(Int32SubWithOverflow) \ + V(Int32Mul) \ + V(Int32MulWithOverflow) \ + V(Int32MulHigh) \ + V(Int32Div) \ + V(Int32Mod) \ + V(Uint32Div) \ + V(Uint32Mod) \ + V(Uint32MulHigh) + +#define MACHINE_BINOP_64_LIST(V) \ + V(Word64And) \ + V(Word64Or) \ + V(Word64Xor) \ + V(Word64Shl) \ + V(Word64Shr) \ + V(Word64Sar) \ + V(Word64Ror) \ + V(Int64Add) \ + V(Int64AddWithOverflow) \ + V(Int64Sub) \ + V(Int64SubWithOverflow) \ + V(Int64Mul) \ + V(Int64Div) \ + V(Int64Mod) \ + V(Uint64Div) \ + V(Uint64Mod) + +#define MACHINE_FLOAT32_UNOP_LIST(V) \ + V(Float32Abs) \ + V(Float32Neg) \ + V(Float32RoundDown) \ + V(Float32RoundTiesEven) \ + V(Float32RoundTruncate) \ + V(Float32RoundUp) \ + V(Float32Sqrt) + +#define MACHINE_FLOAT32_BINOP_LIST(V) \ + V(Float32Add) \ + V(Float32Sub) \ + V(Float32Mul) \ + V(Float32Div) \ + V(Float32Max) \ + V(Float32Min) + +#define MACHINE_FLOAT64_UNOP_LIST(V) \ + V(Float64Abs) \ + V(Float64Acos) \ + V(Float64Acosh) \ + V(Float64Asin) \ + V(Float64Asinh) \ + V(Float64Atan) \ + V(Float64Atanh) \ + V(Float64Cbrt) \ + V(Float64Cos) \ + V(Float64Cosh) \ + V(Float64Exp) \ + V(Float64Expm1) \ + V(Float64Log) \ + V(Float64Log1p) \ + V(Float64Log10) \ + V(Float64Log2) \ + V(Float64Neg) \ + V(Float64RoundDown) \ + V(Float64RoundTiesAway) \ + V(Float64RoundTiesEven) \ + V(Float64RoundTruncate) \ + V(Float64RoundUp) \ + V(Float64Sin) \ + V(Float64Sinh) \ + V(Float64Sqrt) \ + V(Float64Tan) \ + V(Float64Tanh) + +#define MACHINE_FLOAT64_BINOP_LIST(V) \ + V(Float64Atan2) \ + V(Float64Max) \ + V(Float64Min) \ + V(Float64Add) \ + V(Float64Sub) \ + V(Float64Mul) \ + V(Float64Div) \ + V(Float64Mod) \ + V(Float64Pow) + #define MACHINE_OP_LIST(V) \ + MACHINE_UNOP_32_LIST(V) \ + MACHINE_BINOP_32_LIST(V) \ + MACHINE_BINOP_64_LIST(V) \ MACHINE_COMPARE_BINOP_LIST(V) \ + MACHINE_FLOAT32_BINOP_LIST(V) \ + MACHINE_FLOAT32_UNOP_LIST(V) \ + MACHINE_FLOAT64_BINOP_LIST(V) \ + MACHINE_FLOAT64_UNOP_LIST(V) \ V(DebugBreak) \ V(Comment) \ V(Load) \ V(Store) \ V(StackSlot) \ - V(Word32And) \ - V(Word32Or) \ - V(Word32Xor) \ - V(Word32Shl) \ - V(Word32Shr) \ - V(Word32Sar) \ - V(Word32Ror) \ - V(Word32Clz) \ - V(Word32Ctz) \ - V(Word32ReverseBits) \ - V(Word32ReverseBytes) \ V(Word32Popcnt) \ V(Word64Popcnt) \ - V(Word64And) \ - V(Word64Or) \ - V(Word64Xor) \ - V(Word64Shl) \ - V(Word64Shr) \ - V(Word64Sar) \ - V(Word64Ror) \ V(Word64Clz) \ V(Word64Ctz) \ V(Word64ReverseBits) \ V(Word64ReverseBytes) \ - V(Int32Add) \ - V(Int32AddWithOverflow) \ - V(Int32Sub) \ - V(Int32SubWithOverflow) \ - V(Int32Mul) \ - V(Int32MulWithOverflow) \ - V(Int32MulHigh) \ - V(Int32Div) \ - V(Int32Mod) \ - V(Uint32Div) \ - V(Uint32Mod) \ - V(Uint32MulHigh) \ - V(Int64Add) \ - V(Int64AddWithOverflow) \ - V(Int64Sub) \ - V(Int64SubWithOverflow) \ - V(Int64Mul) \ - V(Int64Div) \ - V(Int64Mod) \ - V(Uint64Div) \ - V(Uint64Mod) \ + V(BitcastTaggedToWord) \ V(BitcastWordToTagged) \ + V(BitcastWordToTaggedSigned) \ V(TruncateFloat64ToWord32) \ V(ChangeFloat32ToFloat64) \ V(ChangeFloat64ToInt32) \ @@ -407,12 +485,6 @@ V(ChangeInt32ToInt64) \ V(ChangeUint32ToFloat64) \ V(ChangeUint32ToUint64) \ - V(ImpossibleToBit) \ - V(ImpossibleToWord32) \ - V(ImpossibleToWord64) \ - V(ImpossibleToFloat32) \ - V(ImpossibleToFloat64) \ - V(ImpossibleToTagged) \ V(TruncateFloat64ToFloat32) \ V(TruncateInt64ToInt32) \ V(RoundFloat64ToInt32) \ @@ -426,55 +498,6 @@ V(BitcastFloat64ToInt64) \ V(BitcastInt32ToFloat32) \ V(BitcastInt64ToFloat64) \ - V(Float32Add) \ - V(Float32Sub) \ - V(Float32Neg) \ - V(Float32Mul) \ - V(Float32Div) \ - V(Float32Abs) \ - V(Float32Sqrt) \ - V(Float32RoundDown) \ - V(Float32Max) \ - V(Float32Min) \ - V(Float64Add) \ - V(Float64Sub) \ - V(Float64Neg) \ - V(Float64Mul) \ - V(Float64Div) \ - V(Float64Mod) \ - V(Float64Max) \ - V(Float64Min) \ - V(Float64Abs) \ - V(Float64Acos) \ - V(Float64Acosh) \ - V(Float64Asin) \ - V(Float64Asinh) \ - V(Float64Atan) \ - V(Float64Atanh) \ - V(Float64Atan2) \ - V(Float64Cbrt) \ - V(Float64Cos) \ - V(Float64Cosh) \ - V(Float64Exp) \ - V(Float64Expm1) \ - V(Float64Log) \ - V(Float64Log1p) \ - V(Float64Log10) \ - V(Float64Log2) \ - V(Float64Pow) \ - V(Float64Sin) \ - V(Float64Sinh) \ - V(Float64Sqrt) \ - V(Float64Tan) \ - V(Float64Tanh) \ - V(Float64RoundDown) \ - V(Float32RoundUp) \ - V(Float64RoundUp) \ - V(Float32RoundTruncate) \ - V(Float64RoundTruncate) \ - V(Float64RoundTiesAway) \ - V(Float32RoundTiesEven) \ - V(Float64RoundTiesEven) \ V(Float64ExtractLowWord32) \ V(Float64ExtractHighWord32) \ V(Float64InsertLowWord32) \ @@ -492,6 +515,7 @@ V(Word32PairShl) \ V(Word32PairShr) \ V(Word32PairSar) \ + V(ProtectedLoad) \ V(AtomicLoad) \ V(AtomicStore) \ V(UnsafePointerAdd) |