Lines Matching refs:Operator
21 // An operator represents description of the "computation" of a node in the
29 // parameters" which are compile-time constant parameters to the operator, such
31 // Static parameters are private to the operator and only semantically
32 // meaningful to the operator itself.
33 class V8_EXPORT_PRIVATE Operator : public NON_EXPORTED_BASE(ZoneObject) {
37 // Properties inform the operator-independent optimizer about legal
38 // transformations for nodes that have this operator.
64 Operator(Opcode opcode, Properties properties, const char* mnemonic,
68 virtual ~Operator() {}
70 // A small integer unique to all instances of a particular kind of operator,
72 // the opcode is stored directly in the operator object.
75 // Returns a constant string representing the mnemonic of the operator,
79 // Check if this operator equals another operator. Equivalent operators can
82 virtual bool Equals(const Operator* that) const {
91 // Check whether this operator has the given property.
124 // Print the full operator into the given stream, including any
149 DISALLOW_COPY_AND_ASSIGN(Operator);
152 DEFINE_OPERATORS_FOR_FLAGS(Operator::Properties)
154 std::ostream& operator<<(std::ostream& os, const Operator& op);
167 // A templatized implementation of Operator that has one static parameter of
170 class Operator1 : public Operator {
176 : Operator(opcode, properties, mnemonic, value_in, effect_in, control_in,
184 bool Equals(const Operator* other) const final {
215 // Helper to extract parameters from Operator1<*> operator.
217 inline T const& OpParameter(const Operator* op) {