Remove code.h header and move ParameterCount class.
R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1302293002 Cr-Commit-Position: refs/heads/master@{#30291}
This commit is contained in:
parent
ab6751451d
commit
8c70c20568
1
BUILD.gn
1
BUILD.gn
@ -682,7 +682,6 @@ source_set("v8_base") {
|
||||
"src/code-stubs.cc",
|
||||
"src/code-stubs.h",
|
||||
"src/code-stubs-hydrogen.cc",
|
||||
"src/code.h",
|
||||
"src/codegen.cc",
|
||||
"src/codegen.h",
|
||||
"src/compilation-cache.cc",
|
||||
|
52
src/code.h
52
src/code.h
@ -1,52 +0,0 @@
|
||||
// Copyright 2006-2008 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.
|
||||
|
||||
#ifndef V8_CODE_H_
|
||||
#define V8_CODE_H_
|
||||
|
||||
#include "src/allocation.h"
|
||||
#include "src/handles.h"
|
||||
#include "src/objects.h"
|
||||
|
||||
namespace v8 {
|
||||
namespace internal {
|
||||
|
||||
|
||||
// Wrapper class for passing expected and actual parameter counts as
|
||||
// either registers or immediate values. Used to make sure that the
|
||||
// caller provides exactly the expected number of parameters to the
|
||||
// callee.
|
||||
class ParameterCount BASE_EMBEDDED {
|
||||
public:
|
||||
explicit ParameterCount(Register reg)
|
||||
: reg_(reg), immediate_(0) { }
|
||||
explicit ParameterCount(int immediate)
|
||||
: reg_(no_reg), immediate_(immediate) { }
|
||||
explicit ParameterCount(Handle<JSFunction> f)
|
||||
: reg_(no_reg),
|
||||
immediate_(f->shared()->internal_formal_parameter_count()) {}
|
||||
|
||||
bool is_reg() const { return !reg_.is(no_reg); }
|
||||
bool is_immediate() const { return !is_reg(); }
|
||||
|
||||
Register reg() const {
|
||||
DCHECK(is_reg());
|
||||
return reg_;
|
||||
}
|
||||
int immediate() const {
|
||||
DCHECK(is_immediate());
|
||||
return immediate_;
|
||||
}
|
||||
|
||||
private:
|
||||
const Register reg_;
|
||||
const int immediate_;
|
||||
|
||||
DISALLOW_IMPLICIT_CONSTRUCTORS(ParameterCount);
|
||||
};
|
||||
|
||||
|
||||
} } // namespace v8::internal
|
||||
|
||||
#endif // V8_CODE_H_
|
@ -431,6 +431,7 @@ class MarkCompactCollector;
|
||||
class NewSpace;
|
||||
class Object;
|
||||
class OldSpace;
|
||||
class ParameterCount;
|
||||
class Foreign;
|
||||
class Scope;
|
||||
class ScopeInfo;
|
||||
|
@ -39,20 +39,17 @@ const int kInvalidProtoDepth = -1;
|
||||
#include "src/assembler.h"
|
||||
#include "src/ia32/assembler-ia32.h"
|
||||
#include "src/ia32/assembler-ia32-inl.h"
|
||||
#include "src/code.h" // NOLINT, must be after assembler_*.h
|
||||
#include "src/ia32/macro-assembler-ia32.h"
|
||||
#elif V8_TARGET_ARCH_X64
|
||||
#include "src/assembler.h"
|
||||
#include "src/x64/assembler-x64.h"
|
||||
#include "src/x64/assembler-x64-inl.h"
|
||||
#include "src/code.h" // NOLINT, must be after assembler_*.h
|
||||
#include "src/x64/macro-assembler-x64.h"
|
||||
#elif V8_TARGET_ARCH_ARM64
|
||||
#include "src/arm64/constants-arm64.h"
|
||||
#include "src/assembler.h"
|
||||
#include "src/arm64/assembler-arm64.h" // NOLINT
|
||||
#include "src/arm64/assembler-arm64-inl.h"
|
||||
#include "src/code.h" // NOLINT, must be after assembler_*.h
|
||||
#include "src/arm64/macro-assembler-arm64.h" // NOLINT
|
||||
#include "src/arm64/macro-assembler-arm64-inl.h"
|
||||
#elif V8_TARGET_ARCH_ARM
|
||||
@ -60,34 +57,29 @@ const int kInvalidProtoDepth = -1;
|
||||
#include "src/assembler.h"
|
||||
#include "src/arm/assembler-arm.h" // NOLINT
|
||||
#include "src/arm/assembler-arm-inl.h"
|
||||
#include "src/code.h" // NOLINT, must be after assembler_*.h
|
||||
#include "src/arm/macro-assembler-arm.h" // NOLINT
|
||||
#elif V8_TARGET_ARCH_PPC
|
||||
#include "src/ppc/constants-ppc.h"
|
||||
#include "src/assembler.h" // NOLINT
|
||||
#include "src/ppc/assembler-ppc.h" // NOLINT
|
||||
#include "src/ppc/assembler-ppc-inl.h"
|
||||
#include "src/code.h" // NOLINT, must be after assembler_*.h
|
||||
#include "src/ppc/macro-assembler-ppc.h"
|
||||
#elif V8_TARGET_ARCH_MIPS
|
||||
#include "src/mips/constants-mips.h"
|
||||
#include "src/assembler.h" // NOLINT
|
||||
#include "src/mips/assembler-mips.h" // NOLINT
|
||||
#include "src/mips/assembler-mips-inl.h"
|
||||
#include "src/code.h" // NOLINT, must be after assembler_*.h
|
||||
#include "src/mips/macro-assembler-mips.h"
|
||||
#elif V8_TARGET_ARCH_MIPS64
|
||||
#include "src/mips64/constants-mips64.h"
|
||||
#include "src/assembler.h" // NOLINT
|
||||
#include "src/mips64/assembler-mips64.h" // NOLINT
|
||||
#include "src/mips64/assembler-mips64-inl.h"
|
||||
#include "src/code.h" // NOLINT, must be after assembler_*.h
|
||||
#include "src/mips64/macro-assembler-mips64.h"
|
||||
#elif V8_TARGET_ARCH_X87
|
||||
#include "src/assembler.h"
|
||||
#include "src/x87/assembler-x87.h"
|
||||
#include "src/x87/assembler-x87-inl.h"
|
||||
#include "src/code.h" // NOLINT, must be after assembler_*.h
|
||||
#include "src/x87/macro-assembler-x87.h"
|
||||
#else
|
||||
#error Unsupported target architecture.
|
||||
@ -245,6 +237,35 @@ class Comment {
|
||||
#endif // DEBUG
|
||||
|
||||
|
||||
// Wrapper class for passing expected and actual parameter counts as
|
||||
// either registers or immediate values. Used to make sure that the
|
||||
// caller provides exactly the expected number of parameters to the
|
||||
// callee.
|
||||
class ParameterCount BASE_EMBEDDED {
|
||||
public:
|
||||
explicit ParameterCount(Register reg) : reg_(reg), immediate_(0) {}
|
||||
explicit ParameterCount(int imm) : reg_(no_reg), immediate_(imm) {}
|
||||
|
||||
bool is_reg() const { return !reg_.is(no_reg); }
|
||||
bool is_immediate() const { return !is_reg(); }
|
||||
|
||||
Register reg() const {
|
||||
DCHECK(is_reg());
|
||||
return reg_;
|
||||
}
|
||||
int immediate() const {
|
||||
DCHECK(is_immediate());
|
||||
return immediate_;
|
||||
}
|
||||
|
||||
private:
|
||||
const Register reg_;
|
||||
const int immediate_;
|
||||
|
||||
DISALLOW_IMPLICIT_CONSTRUCTORS(ParameterCount);
|
||||
};
|
||||
|
||||
|
||||
class AllocationUtils {
|
||||
public:
|
||||
static ExternalReference GetAllocationTopReference(
|
||||
|
@ -439,7 +439,6 @@
|
||||
'../../src/code-stubs.cc',
|
||||
'../../src/code-stubs.h',
|
||||
'../../src/code-stubs-hydrogen.cc',
|
||||
'../../src/code.h',
|
||||
'../../src/codegen.cc',
|
||||
'../../src/codegen.h',
|
||||
'../../src/compilation-cache.cc',
|
||||
|
Loading…
Reference in New Issue
Block a user