|
| | OperationMatcher (const Graph &graph) |
| |
| template<class Op > |
| bool | Is (V< AnyOrNone > op_idx) const |
| |
| template<class Op > |
| const underlying_operation_t< Op > * | TryCast (V< AnyOrNone > op_idx) const |
| |
| template<class Op > |
| const underlying_operation_t< Op > & | Cast (V< AnyOrNone > op_idx) const |
| |
| const Operation & | Get (V< AnyOrNone > op_idx) const |
| |
| V< AnyOrNone > | Index (const Operation &op) const |
| |
| bool | MatchZero (V< Any > matched) const |
| |
| bool | MatchIntegralZero (V< Any > matched) const |
| |
| bool | MatchSmiZero (V< Any > matched) const |
| |
| bool | MatchFloat32Constant (V< Any > matched, float *constant) const |
| |
| bool | MatchFloat32Constant (V< Any > matched, i::Float32 *constant) const |
| |
| bool | MatchFloat64Constant (V< Any > matched, double *constant) const |
| |
| bool | MatchFloat64Constant (V< Any > matched, i::Float64 *constant) const |
| |
| bool | MatchFloat (V< Any > matched, double *value) const |
| |
| bool | MatchFloat (V< Any > matched, double value) const |
| |
| bool | MatchNaN (V< Float > matched) const |
| |
| bool | MatchHeapConstant (V< Any > matched, Handle< HeapObject > *tagged=nullptr) const |
| |
| bool | MatchIntegralWordConstant (V< Any > matched, WordRepresentation rep, uint64_t *unsigned_constant, int64_t *signed_constant=nullptr) const |
| |
| bool | MatchIntegralWordConstant (V< Any > matched, WordRepresentation rep, int64_t *signed_constant) const |
| |
| bool | MatchIntegralWord32Constant (V< Any > matched, uint32_t *constant) const |
| |
| bool | MatchIntegralWord64Constant (V< Any > matched, uint64_t *constant) const |
| |
| bool | MatchIntegralWord32Constant (V< Any > matched, uint32_t constant) const |
| |
| bool | MatchIntegralWord64Constant (V< Any > matched, int64_t *constant) const |
| |
| bool | MatchIntegralWord32Constant (V< Any > matched, int32_t *constant) const |
| |
| template<typename T = intptr_t> |
| bool | MatchIntegralWordPtrConstant (V< Any > matched, T *constant) const |
| |
| bool | MatchSignedIntegralConstant (V< Any > matched, int64_t *constant) const |
| |
| bool | MatchUnsignedIntegralConstant (V< Any > matched, uint64_t *constant) const |
| |
| bool | MatchExternalConstant (V< Any > matched, ExternalReference *reference) const |
| |
| bool | MatchWasmStubCallConstant (V< Any > matched, uint64_t *stub_id) const |
| |
| template<typename T > |
| bool | MatchChange (V< Any > matched, VMatch< T > input, OMatch< ChangeOp::Kind > kind={}, OMatch< ChangeOp::Assumption > assumption={}, OMatch< RegisterRepresentation > from={}, OMatch< RegisterRepresentation > to={}) const |
| |
| bool | MatchTruncateWord64ToWord32 (V< Any > matched, VMatch< Word64 > input) const |
| |
template<typename T >
requires (IsWord<T>()) |
| bool | MatchWordBinop (V< Any > matched, VMatch< T > left, VMatch< T > right, OMatch< WordBinopOp::Kind > kind={}, OMatch< WordRepresentation > rep={}) const |
| |
template<class T >
requires (IsWord<T>()) |
| bool | MatchWordAdd (V< Any > matched, V< T > *left, V< T > *right, WordRepresentation rep) const |
| |
template<class T >
requires (IsWord<T>()) |
| bool | MatchWordSub (V< Any > matched, V< T > *left, V< T > *right, WordRepresentation rep) const |
| |
template<class T >
requires (IsWord<T>()) |
| bool | MatchWordMul (V< Any > matched, V< T > *left, V< T > *right, WordRepresentation rep) const |
| |
template<class T >
requires (IsWord<T>()) |
| bool | MatchBitwiseAnd (V< Any > matched, V< T > *left, V< T > *right, WordRepresentation rep) const |
| |
template<class T >
requires (IsWord<T>()) |
| bool | MatchBitwiseAndWithConstant (V< Any > matched, V< T > *value, uint64_t *constant, WordRepresentation rep) const |
| |
| template<typename T > |
| bool | MatchEqual (V< Any > matched, V< T > *left, V< T > *right) const |
| |
| bool | MatchFloatUnary (V< Any > matched, V< Float > *input, FloatUnaryOp::Kind kind, FloatRepresentation rep) const |
| |
| bool | MatchFloatRoundDown (V< Any > matched, V< Float > *input, FloatRepresentation rep) const |
| |
| bool | MatchFloatBinary (V< Any > matched, V< Float > *left, V< Float > *right, FloatBinopOp::Kind kind, FloatRepresentation rep) const |
| |
| bool | MatchFloatSub (V< Any > matched, V< Float > *left, V< Float > *right, FloatRepresentation rep) const |
| |
template<class T >
requires (IsWord<T>()) |
| bool | MatchConstantShift (V< Any > matched, V< T > *input, ShiftOp::Kind *kind, WordRepresentation *rep, int *amount) const |
| |
template<class T >
requires (IsWord<T>()) |
| bool | MatchConstantShift (V< Any > matched, V< T > *input, ShiftOp::Kind kind, WordRepresentation rep, int *amount) const |
| |
template<class T >
requires (IsWord<T>()) |
| bool | MatchConstantRightShift (V< Any > matched, V< T > *input, WordRepresentation rep, int *amount) const |
| |
template<class T >
requires (IsWord<T>()) |
| bool | MatchConstantLeftShift (V< Any > matched, V< T > *input, WordRepresentation rep, int *amount) const |
| |
template<class T >
requires (IsWord<T>()) |
| bool | MatchConstantShiftRightArithmeticShiftOutZeros (V< Any > matched, V< T > *input, WordRepresentation rep, uint16_t *amount) const |
| |
| bool | MatchPhi (V< Any > matched, std::optional< int > input_count=std::nullopt) const |
| |
| bool | MatchPowerOfTwoWordConstant (V< Any > matched, int64_t *ret_cst, WordRepresentation rep) const |
| |
| bool | MatchPowerOfTwoWord32Constant (V< Any > matched, int32_t *divisor) const |
| |
Definition at line 85 of file operation-matcher.h.