#include "src/compiler/js-operator.h"
#include "src/compiler/opcodes.h"
#include "src/compiler/operator.h"
#include "src/compiler/operator-properties.h"
#include "test/unittests/test-utils.h"
namespace v8 {
namespace internal {
namespace compiler {
namespace js_operator_unittest {
namespace {
struct SharedOperator { … };
const SharedOperator kSharedOperators[] = …;
std::ostream& operator<<(std::ostream& os, const SharedOperator& sop) { … }
class JSSharedOperatorTest
: public TestWithZone,
public ::testing::WithParamInterface<SharedOperator> { … };
TEST_P(JSSharedOperatorTest, InstancesAreGloballyShared) { … }
TEST_P(JSSharedOperatorTest, NumberOfInputsAndOutputs) { … }
TEST_P(JSSharedOperatorTest, OpcodeIsCorrect) { … }
TEST_P(JSSharedOperatorTest, Properties) { … }
INSTANTIATE_TEST_SUITE_P(…);
}
}
}
}
}