chromium/v8/test/unittests/compiler/js-call-reducer-unittest.cc

// Copyright 2018 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include <cctype>

#include "src/codegen/tick-counter.h"
#include "src/compiler/compilation-dependencies.h"
#include "src/compiler/feedback-source.h"
#include "src/compiler/js-call-reducer.h"
#include "src/compiler/js-graph.h"
#include "src/compiler/simplified-operator.h"
#include "src/execution/isolate.h"
#include "src/execution/protectors.h"
#include "src/heap/factory.h"
#include "src/objects/feedback-vector.h"
#include "test/unittests/compiler/graph-unittest.h"
#include "test/unittests/compiler/node-test-utils.h"

namespace v8 {
namespace internal {
namespace compiler {

class JSCallReducerTest : public TypedGraphTest {};

TEST_F(JSCallReducerTest, PromiseConstructorNoArgs) {}

TEST_F(JSCallReducerTest, PromiseConstructorSubclass) {}

TEST_F(JSCallReducerTest, PromiseConstructorBasic) {}

// Exactly the same as PromiseConstructorBasic which expects a reduction,
// except that we invalidate the protector cell.
TEST_F(JSCallReducerTest, PromiseConstructorWithHook) {}

// -----------------------------------------------------------------------------
// Math unaries

namespace {

const char* kMathUnaries[] =;

}  // namespace

TEST_F(JSCallReducerTest, MathUnaryWithNumber) {}

// -----------------------------------------------------------------------------
// Math binaries

namespace {

const char* kMathBinaries[] =;

}  // namespace

TEST_F(JSCallReducerTest, MathBinaryWithNumber) {}

// -----------------------------------------------------------------------------
// Math.clz32

TEST_F(JSCallReducerTest, MathClz32WithUnsigned32) {}

TEST_F(JSCallReducerTest, MathClz32WithUnsigned32NoArg) {}

// -----------------------------------------------------------------------------
// Math.imul

TEST_F(JSCallReducerTest, MathImulWithUnsigned32) {}

// -----------------------------------------------------------------------------
// Math.min

TEST_F(JSCallReducerTest, MathMinWithNoArguments) {}

TEST_F(JSCallReducerTest, MathMinWithNumber) {}

TEST_F(JSCallReducerTest, MathMinWithTwoArguments) {}

// -----------------------------------------------------------------------------
// Math.max

TEST_F(JSCallReducerTest, MathMaxWithNoArguments) {}

TEST_F(JSCallReducerTest, MathMaxWithNumber) {}

TEST_F(JSCallReducerTest, MathMaxWithTwoArguments) {}

// -----------------------------------------------------------------------------
// String.fromCharCode

TEST_F(JSCallReducerTest, StringFromSingleCharCodeWithNumber) {}

TEST_F(JSCallReducerTest, StringFromSingleCharCodeWithPlainPrimitive) {}

// -----------------------------------------------------------------------------
// Number.isFinite

TEST_F(JSCallReducerTest, NumberIsFinite) {}

// -----------------------------------------------------------------------------
// Number.isInteger

TEST_F(JSCallReducerTest, NumberIsIntegerWithNumber) {}

// -----------------------------------------------------------------------------
// Number.isNaN

TEST_F(JSCallReducerTest, NumberIsNaNWithNumber) {}

// -----------------------------------------------------------------------------
// Number.isSafeInteger

TEST_F(JSCallReducerTest, NumberIsSafeIntegerWithIntegral32) {}

// -----------------------------------------------------------------------------
// isFinite

TEST_F(JSCallReducerTest, GlobalIsFiniteWithNumber) {}

// -----------------------------------------------------------------------------
// isNaN

TEST_F(JSCallReducerTest, GlobalIsNaN) {}

// -----------------------------------------------------------------------------
// Number.parseInt

TEST_F(JSCallReducerTest, NumberParseInt) {}

}  // namespace compiler
}  // namespace internal
}  // namespace v8