[objects.h splitting] Move StackFrameInfo
BUG=v8:5402,v8:8238 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I6cdc27cc8e687e32e08dfbd4f16b014f60ec2747 Reviewed-on: https://chromium-review.googlesource.com/1256243 Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#56333}
This commit is contained in:
parent
574daf034d
commit
c7b1ceb801
2
BUILD.gn
2
BUILD.gn
@ -2288,6 +2288,8 @@ v8_source_set("v8_base") {
|
||||
"src/objects/script.h",
|
||||
"src/objects/shared-function-info-inl.h",
|
||||
"src/objects/shared-function-info.h",
|
||||
"src/objects/stack-frame-info-inl.h",
|
||||
"src/objects/stack-frame-info.h",
|
||||
"src/objects/string-inl.h",
|
||||
"src/objects/string-table.h",
|
||||
"src/objects/string.h",
|
||||
|
@ -7,6 +7,7 @@
|
||||
|
||||
#include "src/api.h"
|
||||
#include "src/objects-inl.h"
|
||||
#include "src/objects/stack-frame-info.h"
|
||||
|
||||
namespace v8 {
|
||||
|
||||
|
@ -58,6 +58,7 @@
|
||||
#include "src/objects/js-regexp-inl.h"
|
||||
#include "src/objects/module-inl.h"
|
||||
#include "src/objects/ordered-hash-table-inl.h"
|
||||
#include "src/objects/stack-frame-info-inl.h"
|
||||
#include "src/objects/templates.h"
|
||||
#include "src/parsing/parse-info.h"
|
||||
#include "src/parsing/parser.h"
|
||||
|
@ -31,6 +31,7 @@
|
||||
#include "src/objects/module-inl.h"
|
||||
#include "src/objects/promise-inl.h"
|
||||
#include "src/objects/scope-info.h"
|
||||
#include "src/objects/stack-frame-info-inl.h"
|
||||
#include "src/unicode-cache.h"
|
||||
#include "src/unicode-decoder.h"
|
||||
|
||||
|
@ -57,6 +57,7 @@ class PreParsedScopeData;
|
||||
class PromiseResolveThenableJobTask;
|
||||
class RegExpMatchInfo;
|
||||
class ScriptContextTable;
|
||||
class StackFrameInfo;
|
||||
class StoreHandler;
|
||||
class TemplateObjectDescription;
|
||||
class UncompiledDataWithoutPreParsedScope;
|
||||
|
@ -29,6 +29,7 @@
|
||||
#include "src/objects/promise.h"
|
||||
#include "src/objects/script.h"
|
||||
#include "src/objects/shared-function-info.h"
|
||||
#include "src/objects/stack-frame-info.h"
|
||||
#include "src/objects/string.h"
|
||||
#include "src/regexp/jsregexp.h"
|
||||
#include "src/wasm/wasm-objects.h"
|
||||
|
@ -44,6 +44,7 @@
|
||||
#include "src/objects/js-array-inl.h"
|
||||
#include "src/objects/module-inl.h"
|
||||
#include "src/objects/promise-inl.h"
|
||||
#include "src/objects/stack-frame-info-inl.h"
|
||||
#include "src/profiler/tracing-cpu-profiler.h"
|
||||
#include "src/prototype.h"
|
||||
#include "src/regexp/regexp-stack.h"
|
||||
|
@ -45,6 +45,7 @@
|
||||
#include "src/objects/microtask-queue-inl.h"
|
||||
#include "src/objects/module-inl.h"
|
||||
#include "src/objects/promise-inl.h"
|
||||
#include "src/objects/stack-frame-info-inl.h"
|
||||
#include "src/ostreams.h"
|
||||
#include "src/regexp/jsregexp.h"
|
||||
#include "src/transitions.h"
|
||||
|
@ -502,7 +502,6 @@ CAST_ACCESSOR(SimpleNumberDictionary)
|
||||
CAST_ACCESSOR(SmallOrderedHashMap)
|
||||
CAST_ACCESSOR(SmallOrderedHashSet)
|
||||
CAST_ACCESSOR(Smi)
|
||||
CAST_ACCESSOR(StackFrameInfo)
|
||||
CAST_ACCESSOR(StringSet)
|
||||
CAST_ACCESSOR(StringTable)
|
||||
CAST_ACCESSOR(Struct)
|
||||
@ -1590,19 +1589,6 @@ ACCESSORS(TemplateObjectDescription, cooked_strings, FixedArray,
|
||||
ACCESSORS(AccessorPair, getter, Object, kGetterOffset)
|
||||
ACCESSORS(AccessorPair, setter, Object, kSetterOffset)
|
||||
|
||||
SMI_ACCESSORS(StackFrameInfo, line_number, kLineNumberIndex)
|
||||
SMI_ACCESSORS(StackFrameInfo, column_number, kColumnNumberIndex)
|
||||
SMI_ACCESSORS(StackFrameInfo, script_id, kScriptIdIndex)
|
||||
ACCESSORS(StackFrameInfo, script_name, Object, kScriptNameIndex)
|
||||
ACCESSORS(StackFrameInfo, script_name_or_source_url, Object,
|
||||
kScriptNameOrSourceUrlIndex)
|
||||
ACCESSORS(StackFrameInfo, function_name, Object, kFunctionNameIndex)
|
||||
SMI_ACCESSORS(StackFrameInfo, flag, kFlagIndex)
|
||||
BOOL_ACCESSORS(StackFrameInfo, flag, is_eval, kIsEvalBit)
|
||||
BOOL_ACCESSORS(StackFrameInfo, flag, is_constructor, kIsConstructorBit)
|
||||
BOOL_ACCESSORS(StackFrameInfo, flag, is_wasm, kIsWasmBit)
|
||||
SMI_ACCESSORS(StackFrameInfo, id, kIdIndex)
|
||||
|
||||
// static
|
||||
bool Foreign::IsNormalized(Object* value) {
|
||||
if (value == Smi::kZero) return true;
|
||||
|
@ -44,6 +44,7 @@
|
||||
#include "src/objects/microtask-queue-inl.h"
|
||||
#include "src/objects/module-inl.h"
|
||||
#include "src/objects/promise-inl.h"
|
||||
#include "src/objects/stack-frame-info-inl.h"
|
||||
#include "src/ostreams.h"
|
||||
#include "src/regexp/jsregexp.h"
|
||||
#include "src/transitions-inl.h"
|
||||
|
@ -86,6 +86,7 @@
|
||||
#include "src/objects/microtask-queue-inl.h"
|
||||
#include "src/objects/module-inl.h"
|
||||
#include "src/objects/promise-inl.h"
|
||||
#include "src/objects/stack-frame-info-inl.h"
|
||||
#include "src/parsing/preparsed-scope-data.h"
|
||||
#include "src/property-descriptor.h"
|
||||
#include "src/prototype.h"
|
||||
|
@ -2258,47 +2258,6 @@ class AccessorPair: public Struct {
|
||||
DISALLOW_IMPLICIT_CONSTRUCTORS(AccessorPair);
|
||||
};
|
||||
|
||||
class StackFrameInfo : public Struct, public NeverReadOnlySpaceObject {
|
||||
public:
|
||||
DECL_INT_ACCESSORS(line_number)
|
||||
DECL_INT_ACCESSORS(column_number)
|
||||
DECL_INT_ACCESSORS(script_id)
|
||||
DECL_ACCESSORS(script_name, Object)
|
||||
DECL_ACCESSORS(script_name_or_source_url, Object)
|
||||
DECL_ACCESSORS(function_name, Object)
|
||||
DECL_BOOLEAN_ACCESSORS(is_eval)
|
||||
DECL_BOOLEAN_ACCESSORS(is_constructor)
|
||||
DECL_BOOLEAN_ACCESSORS(is_wasm)
|
||||
DECL_INT_ACCESSORS(flag)
|
||||
DECL_INT_ACCESSORS(id)
|
||||
|
||||
DECL_CAST(StackFrameInfo)
|
||||
|
||||
// Dispatched behavior.
|
||||
DECL_PRINTER(StackFrameInfo)
|
||||
DECL_VERIFIER(StackFrameInfo)
|
||||
|
||||
static const int kLineNumberIndex = Struct::kHeaderSize;
|
||||
static const int kColumnNumberIndex = kLineNumberIndex + kPointerSize;
|
||||
static const int kScriptIdIndex = kColumnNumberIndex + kPointerSize;
|
||||
static const int kScriptNameIndex = kScriptIdIndex + kPointerSize;
|
||||
static const int kScriptNameOrSourceUrlIndex =
|
||||
kScriptNameIndex + kPointerSize;
|
||||
static const int kFunctionNameIndex =
|
||||
kScriptNameOrSourceUrlIndex + kPointerSize;
|
||||
static const int kFlagIndex = kFunctionNameIndex + kPointerSize;
|
||||
static const int kIdIndex = kFlagIndex + kPointerSize;
|
||||
static const int kSize = kIdIndex + kPointerSize;
|
||||
|
||||
private:
|
||||
// Bit position in the flag, from least significant bit position.
|
||||
static const int kIsEvalBit = 0;
|
||||
static const int kIsConstructorBit = 1;
|
||||
static const int kIsWasmBit = 2;
|
||||
|
||||
DISALLOW_IMPLICIT_CONSTRUCTORS(StackFrameInfo);
|
||||
};
|
||||
|
||||
// BooleanBit is a helper class for setting and getting a bit in an integer.
|
||||
class BooleanBit : public AllStatic {
|
||||
public:
|
||||
|
38
src/objects/stack-frame-info-inl.h
Normal file
38
src/objects/stack-frame-info-inl.h
Normal file
@ -0,0 +1,38 @@
|
||||
// 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.
|
||||
|
||||
#ifndef V8_OBJECTS_STACK_FRAME_INFO_INL_H_
|
||||
#define V8_OBJECTS_STACK_FRAME_INFO_INL_H_
|
||||
|
||||
#include "src/objects/stack-frame-info.h"
|
||||
|
||||
#include "src/heap/heap-write-barrier-inl.h"
|
||||
|
||||
// Has to be the last include (doesn't have include guards):
|
||||
#include "src/objects/object-macros.h"
|
||||
|
||||
namespace v8 {
|
||||
namespace internal {
|
||||
|
||||
CAST_ACCESSOR(StackFrameInfo)
|
||||
|
||||
SMI_ACCESSORS(StackFrameInfo, line_number, kLineNumberIndex)
|
||||
SMI_ACCESSORS(StackFrameInfo, column_number, kColumnNumberIndex)
|
||||
SMI_ACCESSORS(StackFrameInfo, script_id, kScriptIdIndex)
|
||||
ACCESSORS(StackFrameInfo, script_name, Object, kScriptNameIndex)
|
||||
ACCESSORS(StackFrameInfo, script_name_or_source_url, Object,
|
||||
kScriptNameOrSourceUrlIndex)
|
||||
ACCESSORS(StackFrameInfo, function_name, Object, kFunctionNameIndex)
|
||||
SMI_ACCESSORS(StackFrameInfo, flag, kFlagIndex)
|
||||
BOOL_ACCESSORS(StackFrameInfo, flag, is_eval, kIsEvalBit)
|
||||
BOOL_ACCESSORS(StackFrameInfo, flag, is_constructor, kIsConstructorBit)
|
||||
BOOL_ACCESSORS(StackFrameInfo, flag, is_wasm, kIsWasmBit)
|
||||
SMI_ACCESSORS(StackFrameInfo, id, kIdIndex)
|
||||
|
||||
} // namespace internal
|
||||
} // namespace v8
|
||||
|
||||
#include "src/objects/object-macros-undef.h"
|
||||
|
||||
#endif // V8_OBJECTS_STACK_FRAME_INFO_INL_H_
|
62
src/objects/stack-frame-info.h
Normal file
62
src/objects/stack-frame-info.h
Normal file
@ -0,0 +1,62 @@
|
||||
// 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.
|
||||
|
||||
#ifndef V8_OBJECTS_STACK_FRAME_INFO_H_
|
||||
#define V8_OBJECTS_STACK_FRAME_INFO_H_
|
||||
|
||||
#include "src/objects.h"
|
||||
|
||||
// Has to be the last include (doesn't have include guards):
|
||||
#include "src/objects/object-macros.h"
|
||||
|
||||
namespace v8 {
|
||||
namespace internal {
|
||||
|
||||
class StackFrameInfo : public Struct, public NeverReadOnlySpaceObject {
|
||||
public:
|
||||
DECL_INT_ACCESSORS(line_number)
|
||||
DECL_INT_ACCESSORS(column_number)
|
||||
DECL_INT_ACCESSORS(script_id)
|
||||
DECL_ACCESSORS(script_name, Object)
|
||||
DECL_ACCESSORS(script_name_or_source_url, Object)
|
||||
DECL_ACCESSORS(function_name, Object)
|
||||
DECL_BOOLEAN_ACCESSORS(is_eval)
|
||||
DECL_BOOLEAN_ACCESSORS(is_constructor)
|
||||
DECL_BOOLEAN_ACCESSORS(is_wasm)
|
||||
DECL_INT_ACCESSORS(flag)
|
||||
DECL_INT_ACCESSORS(id)
|
||||
|
||||
DECL_CAST(StackFrameInfo)
|
||||
|
||||
// Dispatched behavior.
|
||||
DECL_PRINTER(StackFrameInfo)
|
||||
DECL_VERIFIER(StackFrameInfo)
|
||||
|
||||
static const int kLineNumberIndex = Struct::kHeaderSize;
|
||||
static const int kColumnNumberIndex = kLineNumberIndex + kPointerSize;
|
||||
static const int kScriptIdIndex = kColumnNumberIndex + kPointerSize;
|
||||
static const int kScriptNameIndex = kScriptIdIndex + kPointerSize;
|
||||
static const int kScriptNameOrSourceUrlIndex =
|
||||
kScriptNameIndex + kPointerSize;
|
||||
static const int kFunctionNameIndex =
|
||||
kScriptNameOrSourceUrlIndex + kPointerSize;
|
||||
static const int kFlagIndex = kFunctionNameIndex + kPointerSize;
|
||||
static const int kIdIndex = kFlagIndex + kPointerSize;
|
||||
static const int kSize = kIdIndex + kPointerSize;
|
||||
|
||||
private:
|
||||
// Bit position in the flag, from least significant bit position.
|
||||
static const int kIsEvalBit = 0;
|
||||
static const int kIsConstructorBit = 1;
|
||||
static const int kIsWasmBit = 2;
|
||||
|
||||
DISALLOW_IMPLICIT_CONSTRUCTORS(StackFrameInfo);
|
||||
};
|
||||
|
||||
} // namespace internal
|
||||
} // namespace v8
|
||||
|
||||
#include "src/objects/object-macros-undef.h"
|
||||
|
||||
#endif // V8_OBJECTS_STACK_FRAME_INFO_H_
|
Loading…
Reference in New Issue
Block a user