V8 API Reference, 7.2.502.16 (for Deno 0.2.4)
v8::internal::compiler::MachineOperatorBuilder Class Referencefinal
Inheritance diagram for v8::internal::compiler::MachineOperatorBuilder:
NON_EXPORTED_BASEZoneObject

Classes

class  AlignmentRequirements
 

Public Types

enum  Flag : unsigned {
  kNoFlags = 0u, kFloat32RoundDown = 1u << 0, kFloat64RoundDown = 1u << 1, kFloat32RoundUp = 1u << 2,
  kFloat64RoundUp = 1u << 3, kFloat32RoundTruncate = 1u << 4, kFloat64RoundTruncate = 1u << 5, kFloat32RoundTiesEven = 1u << 6,
  kFloat64RoundTiesEven = 1u << 7, kFloat64RoundTiesAway = 1u << 8, kInt32DivIsSafe = 1u << 9, kUint32DivIsSafe = 1u << 10,
  kWord32ShiftIsSafe = 1u << 11, kWord32Ctz = 1u << 12, kWord64Ctz = 1u << 13, kWord32Popcnt = 1u << 14,
  kWord64Popcnt = 1u << 15, kWord32ReverseBits = 1u << 16, kWord64ReverseBits = 1u << 17, kInt32AbsWithOverflow = 1u << 20,
  kInt64AbsWithOverflow = 1u << 21, kSpeculationFence = 1u << 22, kAllOptionalOps
}
 
typedef base::Flags< Flag, unsigned > Flags
 

Public Member Functions

 MachineOperatorBuilder (Zone *zone, MachineRepresentation word=MachineType::PointerRepresentation(), Flags supportedOperators=kNoFlags, AlignmentRequirements alignmentRequirements=AlignmentRequirements::FullUnalignedAccessSupport())
 
const Operator * Comment (const char *msg)
 
const Operator * DebugAbort ()
 
const Operator * DebugBreak ()
 
const Operator * UnsafePointerAdd ()
 
const Operator * Word32And ()
 
const Operator * Word32Or ()
 
const Operator * Word32Xor ()
 
const Operator * Word32Shl ()
 
const Operator * Word32Shr ()
 
const Operator * Word32Sar ()
 
const Operator * Word32Ror ()
 
const Operator * Word32Equal ()
 
const Operator * Word32Clz ()
 
const OptionalOperator Word32Ctz ()
 
const OptionalOperator Word32Popcnt ()
 
const OptionalOperator Word64Popcnt ()
 
const OptionalOperator Word32ReverseBits ()
 
const OptionalOperator Word64ReverseBits ()
 
const Operator * Word32ReverseBytes ()
 
const Operator * Word64ReverseBytes ()
 
const OptionalOperator Int32AbsWithOverflow ()
 
const OptionalOperator Int64AbsWithOverflow ()
 
bool Word32ShiftIsSafe () const
 
const Operator * Word64And ()
 
const Operator * Word64Or ()
 
const Operator * Word64Xor ()
 
const Operator * Word64Shl ()
 
const Operator * Word64Shr ()
 
const Operator * Word64Sar ()
 
const Operator * Word64Ror ()
 
const Operator * Word64Clz ()
 
const OptionalOperator Word64Ctz ()
 
const Operator * Word64Equal ()
 
const Operator * Int32PairAdd ()
 
const Operator * Int32PairSub ()
 
const Operator * Int32PairMul ()
 
const Operator * Word32PairShl ()
 
const Operator * Word32PairShr ()
 
const Operator * Word32PairSar ()
 
const Operator * Int32Add ()
 
const Operator * Int32AddWithOverflow ()
 
const Operator * Int32Sub ()
 
const Operator * Int32SubWithOverflow ()
 
const Operator * Int32Mul ()
 
const Operator * Int32MulWithOverflow ()
 
const Operator * Int32MulHigh ()
 
const Operator * Int32Div ()
 
const Operator * Int32Mod ()
 
const Operator * Int32LessThan ()
 
const Operator * Int32LessThanOrEqual ()
 
const Operator * Uint32Div ()
 
const Operator * Uint32LessThan ()
 
const Operator * Uint32LessThanOrEqual ()
 
const Operator * Uint32Mod ()
 
const Operator * Uint32MulHigh ()
 
bool Int32DivIsSafe () const
 
bool Uint32DivIsSafe () const
 
const Operator * Int64Add ()
 
const Operator * Int64AddWithOverflow ()
 
const Operator * Int64Sub ()
 
const Operator * Int64SubWithOverflow ()
 
const Operator * Int64Mul ()
 
const Operator * Int64Div ()
 
const Operator * Int64Mod ()
 
const Operator * Int64LessThan ()
 
const Operator * Int64LessThanOrEqual ()
 
const Operator * Uint64Div ()
 
const Operator * Uint64LessThan ()
 
const Operator * Uint64LessThanOrEqual ()
 
const Operator * Uint64Mod ()
 
const Operator * BitcastTaggedToWord ()
 
const Operator * BitcastMaybeObjectToWord ()
 
const Operator * BitcastWordToTagged ()
 
const Operator * BitcastWordToTaggedSigned ()
 
const Operator * TruncateFloat64ToWord32 ()
 
const Operator * ChangeFloat32ToFloat64 ()
 
const Operator * ChangeFloat64ToInt32 ()
 
const Operator * ChangeFloat64ToInt64 ()
 
const Operator * ChangeFloat64ToUint32 ()
 
const Operator * ChangeFloat64ToUint64 ()
 
const Operator * TruncateFloat64ToInt64 ()
 
const Operator * TruncateFloat64ToUint32 ()
 
const Operator * TruncateFloat32ToInt32 ()
 
const Operator * TruncateFloat32ToUint32 ()
 
const Operator * TryTruncateFloat32ToInt64 ()
 
const Operator * TryTruncateFloat64ToInt64 ()
 
const Operator * TryTruncateFloat32ToUint64 ()
 
const Operator * TryTruncateFloat64ToUint64 ()
 
const Operator * ChangeInt32ToFloat64 ()
 
const Operator * ChangeInt32ToInt64 ()
 
const Operator * ChangeInt64ToFloat64 ()
 
const Operator * ChangeUint32ToFloat64 ()
 
const Operator * ChangeUint32ToUint64 ()
 
const Operator * TruncateFloat64ToFloat32 ()
 
const Operator * TruncateInt64ToInt32 ()
 
const Operator * RoundFloat64ToInt32 ()
 
const Operator * RoundInt32ToFloat32 ()
 
const Operator * RoundInt64ToFloat32 ()
 
const Operator * RoundInt64ToFloat64 ()
 
const Operator * RoundUint32ToFloat32 ()
 
const Operator * RoundUint64ToFloat32 ()
 
const Operator * RoundUint64ToFloat64 ()
 
const Operator * BitcastFloat32ToInt32 ()
 
const Operator * BitcastFloat64ToInt64 ()
 
const Operator * BitcastInt32ToFloat32 ()
 
const Operator * BitcastInt64ToFloat64 ()
 
const Operator * SignExtendWord8ToInt32 ()
 
const Operator * SignExtendWord16ToInt32 ()
 
const Operator * SignExtendWord8ToInt64 ()
 
const Operator * SignExtendWord16ToInt64 ()
 
const Operator * SignExtendWord32ToInt64 ()
 
const Operator * Float32Add ()
 
const Operator * Float32Sub ()
 
const Operator * Float32Mul ()
 
const Operator * Float32Div ()
 
const Operator * Float32Sqrt ()
 
const Operator * Float64Add ()
 
const Operator * Float64Sub ()
 
const Operator * Float64Mul ()
 
const Operator * Float64Div ()
 
const Operator * Float64Mod ()
 
const Operator * Float64Sqrt ()
 
const Operator * Float32Equal ()
 
const Operator * Float32LessThan ()
 
const Operator * Float32LessThanOrEqual ()
 
const Operator * Float64Equal ()
 
const Operator * Float64LessThan ()
 
const Operator * Float64LessThanOrEqual ()
 
const Operator * Float64Max ()
 
const Operator * Float64Min ()
 
const Operator * Float32Max ()
 
const Operator * Float32Min ()
 
const Operator * Float32Abs ()
 
const Operator * Float64Abs ()
 
const OptionalOperator Float32RoundDown ()
 
const OptionalOperator Float64RoundDown ()
 
const OptionalOperator Float32RoundUp ()
 
const OptionalOperator Float64RoundUp ()
 
const OptionalOperator Float32RoundTruncate ()
 
const OptionalOperator Float64RoundTruncate ()
 
const OptionalOperator Float64RoundTiesAway ()
 
const OptionalOperator Float32RoundTiesEven ()
 
const OptionalOperator Float64RoundTiesEven ()
 
const Operator * Float32Neg ()
 
const Operator * Float64Neg ()
 
const Operator * Float64Acos ()
 
const Operator * Float64Acosh ()
 
const Operator * Float64Asin ()
 
const Operator * Float64Asinh ()
 
const Operator * Float64Atan ()
 
const Operator * Float64Atan2 ()
 
const Operator * Float64Atanh ()
 
const Operator * Float64Cos ()
 
const Operator * Float64Cosh ()
 
const Operator * Float64Sin ()
 
const Operator * Float64Sinh ()
 
const Operator * Float64Tan ()
 
const Operator * Float64Tanh ()
 
const Operator * Float64Exp ()
 
const Operator * Float64Expm1 ()
 
const Operator * Float64Pow ()
 
const Operator * Float64Log ()
 
const Operator * Float64Log1p ()
 
const Operator * Float64Log2 ()
 
const Operator * Float64Log10 ()
 
const Operator * Float64Cbrt ()
 
const Operator * Float64ExtractLowWord32 ()
 
const Operator * Float64ExtractHighWord32 ()
 
const Operator * Float64InsertLowWord32 ()
 
const Operator * Float64InsertHighWord32 ()
 
const Operator * Float64SilenceNaN ()
 
const Operator * F32x4Splat ()
 
const Operator * F32x4ExtractLane (int32_t)
 
const Operator * F32x4ReplaceLane (int32_t)
 
const Operator * F32x4SConvertI32x4 ()
 
const Operator * F32x4UConvertI32x4 ()
 
const Operator * F32x4Abs ()
 
const Operator * F32x4Neg ()
 
const Operator * F32x4RecipApprox ()
 
const Operator * F32x4RecipSqrtApprox ()
 
const Operator * F32x4Add ()
 
const Operator * F32x4AddHoriz ()
 
const Operator * F32x4Sub ()
 
const Operator * F32x4Mul ()
 
const Operator * F32x4Div ()
 
const Operator * F32x4Min ()
 
const Operator * F32x4Max ()
 
const Operator * F32x4Eq ()
 
const Operator * F32x4Ne ()
 
const Operator * F32x4Lt ()
 
const Operator * F32x4Le ()
 
const Operator * I32x4Splat ()
 
const Operator * I32x4ExtractLane (int32_t)
 
const Operator * I32x4ReplaceLane (int32_t)
 
const Operator * I32x4SConvertF32x4 ()
 
const Operator * I32x4SConvertI16x8Low ()
 
const Operator * I32x4SConvertI16x8High ()
 
const Operator * I32x4Neg ()
 
const Operator * I32x4Shl (int32_t)
 
const Operator * I32x4ShrS (int32_t)
 
const Operator * I32x4Add ()
 
const Operator * I32x4AddHoriz ()
 
const Operator * I32x4Sub ()
 
const Operator * I32x4Mul ()
 
const Operator * I32x4MinS ()
 
const Operator * I32x4MaxS ()
 
const Operator * I32x4Eq ()
 
const Operator * I32x4Ne ()
 
const Operator * I32x4GtS ()
 
const Operator * I32x4GeS ()
 
const Operator * I32x4UConvertF32x4 ()
 
const Operator * I32x4UConvertI16x8Low ()
 
const Operator * I32x4UConvertI16x8High ()
 
const Operator * I32x4ShrU (int32_t)
 
const Operator * I32x4MinU ()
 
const Operator * I32x4MaxU ()
 
const Operator * I32x4GtU ()
 
const Operator * I32x4GeU ()
 
const Operator * I16x8Splat ()
 
const Operator * I16x8ExtractLane (int32_t)
 
const Operator * I16x8ReplaceLane (int32_t)
 
const Operator * I16x8SConvertI8x16Low ()
 
const Operator * I16x8SConvertI8x16High ()
 
const Operator * I16x8Neg ()
 
const Operator * I16x8Shl (int32_t)
 
const Operator * I16x8ShrS (int32_t)
 
const Operator * I16x8SConvertI32x4 ()
 
const Operator * I16x8Add ()
 
const Operator * I16x8AddSaturateS ()
 
const Operator * I16x8AddHoriz ()
 
const Operator * I16x8Sub ()
 
const Operator * I16x8SubSaturateS ()
 
const Operator * I16x8Mul ()
 
const Operator * I16x8MinS ()
 
const Operator * I16x8MaxS ()
 
const Operator * I16x8Eq ()
 
const Operator * I16x8Ne ()
 
const Operator * I16x8GtS ()
 
const Operator * I16x8GeS ()
 
const Operator * I16x8UConvertI8x16Low ()
 
const Operator * I16x8UConvertI8x16High ()
 
const Operator * I16x8ShrU (int32_t)
 
const Operator * I16x8UConvertI32x4 ()
 
const Operator * I16x8AddSaturateU ()
 
const Operator * I16x8SubSaturateU ()
 
const Operator * I16x8MinU ()
 
const Operator * I16x8MaxU ()
 
const Operator * I16x8GtU ()
 
const Operator * I16x8GeU ()
 
const Operator * I8x16Splat ()
 
const Operator * I8x16ExtractLane (int32_t)
 
const Operator * I8x16ReplaceLane (int32_t)
 
const Operator * I8x16Neg ()
 
const Operator * I8x16Shl (int32_t)
 
const Operator * I8x16ShrS (int32_t)
 
const Operator * I8x16SConvertI16x8 ()
 
const Operator * I8x16Add ()
 
const Operator * I8x16AddSaturateS ()
 
const Operator * I8x16Sub ()
 
const Operator * I8x16SubSaturateS ()
 
const Operator * I8x16Mul ()
 
const Operator * I8x16MinS ()
 
const Operator * I8x16MaxS ()
 
const Operator * I8x16Eq ()
 
const Operator * I8x16Ne ()
 
const Operator * I8x16GtS ()
 
const Operator * I8x16GeS ()
 
const Operator * I8x16ShrU (int32_t)
 
const Operator * I8x16UConvertI16x8 ()
 
const Operator * I8x16AddSaturateU ()
 
const Operator * I8x16SubSaturateU ()
 
const Operator * I8x16MinU ()
 
const Operator * I8x16MaxU ()
 
const Operator * I8x16GtU ()
 
const Operator * I8x16GeU ()
 
const Operator * S128Load ()
 
const Operator * S128Store ()
 
const Operator * S128Zero ()
 
const Operator * S128And ()
 
const Operator * S128Or ()
 
const Operator * S128Xor ()
 
const Operator * S128Not ()
 
const Operator * S128Select ()
 
const Operator * S8x16Shuffle (const uint8_t shuffle[16])
 
const Operator * S1x4AnyTrue ()
 
const Operator * S1x4AllTrue ()
 
const Operator * S1x8AnyTrue ()
 
const Operator * S1x8AllTrue ()
 
const Operator * S1x16AnyTrue ()
 
const Operator * S1x16AllTrue ()
 
const Operator * Load (LoadRepresentation rep)
 
const Operator * PoisonedLoad (LoadRepresentation rep)
 
const Operator * ProtectedLoad (LoadRepresentation rep)
 
const Operator * Store (StoreRepresentation rep)
 
const Operator * ProtectedStore (MachineRepresentation rep)
 
const Operator * UnalignedLoad (LoadRepresentation rep)
 
const Operator * UnalignedStore (UnalignedStoreRepresentation rep)
 
const Operator * StackSlot (int size, int alignment=0)
 
const Operator * StackSlot (MachineRepresentation rep, int alignment=0)
 
const Operator * TaggedPoisonOnSpeculation ()
 
const Operator * Word32PoisonOnSpeculation ()
 
const Operator * Word64PoisonOnSpeculation ()
 
const Operator * LoadStackPointer ()
 
const Operator * LoadFramePointer ()
 
const Operator * LoadParentFramePointer ()
 
const Operator * Word32AtomicLoad (LoadRepresentation rep)
 
const Operator * Word64AtomicLoad (LoadRepresentation rep)
 
const Operator * Word32AtomicStore (MachineRepresentation rep)
 
const Operator * Word64AtomicStore (MachineRepresentation rep)
 
const Operator * Word32AtomicExchange (MachineType type)
 
const Operator * Word64AtomicExchange (MachineType type)
 
const Operator * Word32AtomicCompareExchange (MachineType type)
 
const Operator * Word64AtomicCompareExchange (MachineType type)
 
const Operator * Word32AtomicAdd (MachineType type)
 
const Operator * Word32AtomicSub (MachineType type)
 
const Operator * Word32AtomicAnd (MachineType type)
 
const Operator * Word32AtomicOr (MachineType type)
 
const Operator * Word32AtomicXor (MachineType rep)
 
const Operator * Word64AtomicAdd (MachineType rep)
 
const Operator * Word64AtomicSub (MachineType type)
 
const Operator * Word64AtomicAnd (MachineType type)
 
const Operator * Word64AtomicOr (MachineType type)
 
const Operator * Word64AtomicXor (MachineType rep)
 
const Operator * Word32AtomicPairLoad ()
 
const Operator * Word32AtomicPairStore ()
 
const Operator * Word32AtomicPairAdd ()
 
const Operator * Word32AtomicPairSub ()
 
const Operator * Word32AtomicPairAnd ()
 
const Operator * Word32AtomicPairOr ()
 
const Operator * Word32AtomicPairXor ()
 
const Operator * Word32AtomicPairExchange ()
 
const Operator * Word32AtomicPairCompareExchange ()
 
const OptionalOperator SpeculationFence ()
 
bool Is32 () const
 
bool Is64 () const
 
MachineRepresentation word () const
 
bool UnalignedLoadSupported (MachineRepresentation rep)
 
bool UnalignedStoreSupported (MachineRepresentation rep)
 

Detailed Description

Definition at line 118 of file machine-operator.h.


The documentation for this class was generated from the following files: