18 return os << ost.
c_str();
42 #define PURE(Name, properties, input_count) \
44 &SimplifiedOperatorBuilder::Name, IrOpcode::k##Name, \
45 Operator::kPure | properties, input_count \
78 public ::testing::WithParamInterface<PureOperator> {};
82 const PureOperator& pop = GetParam();
83 SimplifiedOperatorBuilder simplified1(zone());
84 SimplifiedOperatorBuilder simplified2(zone());
85 EXPECT_EQ((simplified1.*pop.constructor)(), (simplified2.*pop.constructor)());
90 SimplifiedOperatorBuilder simplified(zone());
91 const PureOperator& pop = GetParam();
92 const Operator* op = (simplified.*pop.constructor)();
106 SimplifiedOperatorBuilder simplified(zone());
107 const PureOperator& pop = GetParam();
108 const Operator* op = (simplified.*pop.constructor)();
109 EXPECT_EQ(pop.opcode, op->
opcode());
114 SimplifiedOperatorBuilder simplified(zone());
115 const PureOperator& pop = GetParam();
116 const Operator* op = (simplified.*pop.constructor)();
117 EXPECT_EQ(pop.properties, op->
properties() & pop.properties);
173 public ::testing::WithParamInterface<ElementAccess> {};
177 SimplifiedOperatorBuilder simplified(zone());
179 const Operator* op = simplified.LoadElement(access);
181 EXPECT_EQ(IrOpcode::kLoadElement, op->
opcode());
197 SimplifiedOperatorBuilder simplified(zone());
199 const Operator* op = simplified.StoreElement(access);
201 EXPECT_EQ(IrOpcode::kStoreElement, op->
opcode());
static const int kHeaderSize
static const int kDataOffset
const char * c_str() const
static const char * Mnemonic(Value val)
static int GetTotalInputCount(const Operator *op)
static int GetEffectInputCount(const Operator *op)
static int GetEffectOutputCount(const Operator *op)
static int GetValueInputCount(const Operator *op)
static int GetControlOutputCount(const Operator *op)
static int GetValueOutputCount(const Operator *op)
static int GetControlInputCount(const Operator *op)
Properties properties() const
base::Flags< Property, uint8_t > Properties
const ElementAccess kElementAccesses[]
const PureOperator kPureOperators[]
const ElementAccess & ElementAccessOf(const Operator *op)
std::ostream & operator<<(std::ostream &os, const MachineType &type)
TEST_P(InstructionSelectorDPITest, Parameters)
INSTANTIATE_TEST_CASE_P(InstructionSelectorTest, InstructionSelectorDPITest, ::testing::ValuesIn(kDPIs))
static const int kNonHeapObjectHeaderSize
int32_t NumberToInt32(Object *number)
uint32_t NumberToUint32(Object *number)
Debugger support for the V8 JavaScript engine.
#define PURE(Name, properties, input_count)
const Operator *(SimplifiedOperatorBuilder::* constructor)()
Operator::Properties properties