Revert "Make unittest link correctly again"
This reverts commit 0f5ebcca4e
.
Reason for revert: Still blocks rolling:
https://codereview.chromium.org/2857903002/
Original change's description:
> Make unittest link correctly again
>
> Remains to port these fixes over to gyp.
>
> R=machenbach@chromium.org, jkummerow@chromium.org, mstarzinger@chromium.org
> BUG=v8:6325
>
> Change-Id: I3bebbc6d0ec52fcb60e3d51acd27e616f51d3dbb
> Reviewed-on: https://chromium-review.googlesource.com/490108
> Commit-Queue: Jochen Eisinger <jochen@chromium.org>
> Reviewed-by: Clemens Hammacher <clemensh@chromium.org>
> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
> Reviewed-by: Michael Achenbach <machenbach@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#45026}
TBR=jkummerow@chromium.org,machenbach@chromium.org,mstarzinger@chromium.org,jochen@chromium.org,clemensh@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:6325
Change-Id: Icb11e6e12cb6c7bd6c68677359596fee740b6531
Reviewed-on: https://chromium-review.googlesource.com/494467
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#45049}
This commit is contained in:
parent
b6b034e572
commit
5db25a0906
46
BUILD.gn
46
BUILD.gn
@ -884,6 +884,7 @@ v8_source_set("v8_builtins_generators") {
|
|||||||
visibility = [
|
visibility = [
|
||||||
":*",
|
":*",
|
||||||
"test/cctest:*",
|
"test/cctest:*",
|
||||||
|
"test/unittests:*",
|
||||||
]
|
]
|
||||||
|
|
||||||
deps = [
|
deps = [
|
||||||
@ -2437,7 +2438,6 @@ v8_component("v8_libbase") {
|
|||||||
"src/base/debug/stack_trace.h",
|
"src/base/debug/stack_trace.h",
|
||||||
"src/base/division-by-constant.cc",
|
"src/base/division-by-constant.cc",
|
||||||
"src/base/division-by-constant.h",
|
"src/base/division-by-constant.h",
|
||||||
"src/base/export-template.h",
|
|
||||||
"src/base/file-utils.cc",
|
"src/base/file-utils.cc",
|
||||||
"src/base/file-utils.h",
|
"src/base/file-utils.h",
|
||||||
"src/base/flags.h",
|
"src/base/flags.h",
|
||||||
@ -2740,31 +2740,6 @@ if (is_component_build) {
|
|||||||
|
|
||||||
public_configs = [ ":external_config" ]
|
public_configs = [ ":external_config" ]
|
||||||
}
|
}
|
||||||
|
|
||||||
v8_component("v8_for_testing") {
|
|
||||||
testonly = true
|
|
||||||
|
|
||||||
sources = [
|
|
||||||
"src/v8dll-main.cc",
|
|
||||||
]
|
|
||||||
|
|
||||||
deps = [
|
|
||||||
":v8_dump_build_config",
|
|
||||||
]
|
|
||||||
|
|
||||||
public_deps = [
|
|
||||||
":v8_base",
|
|
||||||
":v8_maybe_snapshot",
|
|
||||||
]
|
|
||||||
|
|
||||||
if (v8_use_snapshot) {
|
|
||||||
public_deps += [ ":v8_builtins_generators" ]
|
|
||||||
}
|
|
||||||
|
|
||||||
configs = [ ":internal_config" ]
|
|
||||||
|
|
||||||
public_configs = [ ":external_config" ]
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
group("v8") {
|
group("v8") {
|
||||||
deps = [
|
deps = [
|
||||||
@ -2778,25 +2753,6 @@ if (is_component_build) {
|
|||||||
|
|
||||||
public_configs = [ ":external_config" ]
|
public_configs = [ ":external_config" ]
|
||||||
}
|
}
|
||||||
|
|
||||||
group("v8_for_testing") {
|
|
||||||
testonly = true
|
|
||||||
|
|
||||||
deps = [
|
|
||||||
":v8_dump_build_config",
|
|
||||||
]
|
|
||||||
|
|
||||||
public_deps = [
|
|
||||||
":v8_base",
|
|
||||||
":v8_maybe_snapshot",
|
|
||||||
]
|
|
||||||
|
|
||||||
if (v8_use_snapshot) {
|
|
||||||
public_deps += [ ":v8_builtins_generators" ]
|
|
||||||
}
|
|
||||||
|
|
||||||
public_configs = [ ":external_config" ]
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
v8_executable("d8") {
|
v8_executable("d8") {
|
||||||
|
14
PRESUBMIT.py
14
PRESUBMIT.py
@ -43,12 +43,6 @@ _EXCLUDED_PATHS = (
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
# Regular expression that matches code which should not be run through cpplint.
|
|
||||||
_NO_LINT_PATHS = (
|
|
||||||
r'src[\\\/]base[\\\/]export-template\.h',
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
# Regular expression that matches code only used for test binaries
|
# Regular expression that matches code only used for test binaries
|
||||||
# (best effort).
|
# (best effort).
|
||||||
_TEST_CODE_EXCLUDED_PATHS = (
|
_TEST_CODE_EXCLUDED_PATHS = (
|
||||||
@ -76,15 +70,9 @@ def _V8PresubmitChecks(input_api, output_api):
|
|||||||
from presubmit import SourceProcessor
|
from presubmit import SourceProcessor
|
||||||
from presubmit import StatusFilesProcessor
|
from presubmit import StatusFilesProcessor
|
||||||
|
|
||||||
def FilterFile(affected_file):
|
|
||||||
return input_api.FilterSourceFile(
|
|
||||||
affected_file,
|
|
||||||
white_list=None,
|
|
||||||
black_list=_NO_LINT_PATHS)
|
|
||||||
|
|
||||||
results = []
|
results = []
|
||||||
if not CppLintProcessor().RunOnFiles(
|
if not CppLintProcessor().RunOnFiles(
|
||||||
input_api.AffectedFiles(file_filter=FilterFile, include_deletes=False)):
|
input_api.AffectedFiles(include_deletes=False)):
|
||||||
results.append(output_api.PresubmitError("C++ lint check failed"))
|
results.append(output_api.PresubmitError("C++ lint check failed"))
|
||||||
if not SourceProcessor().RunOnFiles(
|
if not SourceProcessor().RunOnFiles(
|
||||||
input_api.AffectedFiles(include_deletes=False)):
|
input_api.AffectedFiles(include_deletes=False)):
|
||||||
|
@ -1,163 +0,0 @@
|
|||||||
// Copyright 2017 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_BASE_EXPORT_TEMPLATE_H_
|
|
||||||
#define V8_BASE_EXPORT_TEMPLATE_H_
|
|
||||||
|
|
||||||
// Synopsis
|
|
||||||
//
|
|
||||||
// This header provides macros for using FOO_EXPORT macros with explicit
|
|
||||||
// template instantiation declarations and definitions.
|
|
||||||
// Generally, the FOO_EXPORT macros are used at declarations,
|
|
||||||
// and GCC requires them to be used at explicit instantiation declarations,
|
|
||||||
// but MSVC requires __declspec(dllexport) to be used at the explicit
|
|
||||||
// instantiation definitions instead.
|
|
||||||
|
|
||||||
// Usage
|
|
||||||
//
|
|
||||||
// In a header file, write:
|
|
||||||
//
|
|
||||||
// extern template class EXPORT_TEMPLATE_DECLARE(FOO_EXPORT) foo<bar>;
|
|
||||||
//
|
|
||||||
// In a source file, write:
|
|
||||||
//
|
|
||||||
// template class EXPORT_TEMPLATE_DEFINE(FOO_EXPORT) foo<bar>;
|
|
||||||
|
|
||||||
// Implementation notes
|
|
||||||
//
|
|
||||||
// The implementation of this header uses some subtle macro semantics to
|
|
||||||
// detect what the provided FOO_EXPORT value was defined as and then
|
|
||||||
// to dispatch to appropriate macro definitions. Unfortunately,
|
|
||||||
// MSVC's C preprocessor is rather non-compliant and requires special
|
|
||||||
// care to make it work.
|
|
||||||
//
|
|
||||||
// Issue 1.
|
|
||||||
//
|
|
||||||
// #define F(x)
|
|
||||||
// F()
|
|
||||||
//
|
|
||||||
// MSVC emits warning C4003 ("not enough actual parameters for macro
|
|
||||||
// 'F'), even though it's a valid macro invocation. This affects the
|
|
||||||
// macros below that take just an "export" parameter, because export
|
|
||||||
// may be empty.
|
|
||||||
//
|
|
||||||
// As a workaround, we can add a dummy parameter and arguments:
|
|
||||||
//
|
|
||||||
// #define F(x,_)
|
|
||||||
// F(,)
|
|
||||||
//
|
|
||||||
// Issue 2.
|
|
||||||
//
|
|
||||||
// #define F(x) G##x
|
|
||||||
// #define Gj() ok
|
|
||||||
// F(j())
|
|
||||||
//
|
|
||||||
// The correct replacement for "F(j())" is "ok", but MSVC replaces it
|
|
||||||
// with "Gj()". As a workaround, we can pass the result to an
|
|
||||||
// identity macro to force MSVC to look for replacements again. (This
|
|
||||||
// is why EXPORT_TEMPLATE_STYLE_3 exists.)
|
|
||||||
|
|
||||||
#define EXPORT_TEMPLATE_DECLARE(export) \
|
|
||||||
EXPORT_TEMPLATE_INVOKE(DECLARE, EXPORT_TEMPLATE_STYLE(export, ), export)
|
|
||||||
#define EXPORT_TEMPLATE_DEFINE(export) \
|
|
||||||
EXPORT_TEMPLATE_INVOKE(DEFINE, EXPORT_TEMPLATE_STYLE(export, ), export)
|
|
||||||
|
|
||||||
// INVOKE is an internal helper macro to perform parameter replacements
|
|
||||||
// and token pasting to chain invoke another macro. E.g.,
|
|
||||||
// EXPORT_TEMPLATE_INVOKE(DECLARE, DEFAULT, FOO_EXPORT)
|
|
||||||
// will export to call
|
|
||||||
// EXPORT_TEMPLATE_DECLARE_DEFAULT(FOO_EXPORT, )
|
|
||||||
// (but with FOO_EXPORT expanded too).
|
|
||||||
#define EXPORT_TEMPLATE_INVOKE(which, style, export) \
|
|
||||||
EXPORT_TEMPLATE_INVOKE_2(which, style, export)
|
|
||||||
#define EXPORT_TEMPLATE_INVOKE_2(which, style, export) \
|
|
||||||
EXPORT_TEMPLATE_##which##_##style(export, )
|
|
||||||
|
|
||||||
// Default style is to apply the FOO_EXPORT macro at declaration sites.
|
|
||||||
#define EXPORT_TEMPLATE_DECLARE_DEFAULT(export, _) export
|
|
||||||
#define EXPORT_TEMPLATE_DEFINE_DEFAULT(export, _)
|
|
||||||
|
|
||||||
// The "MSVC hack" style is used when FOO_EXPORT is defined
|
|
||||||
// as __declspec(dllexport), which MSVC requires to be used at
|
|
||||||
// definition sites instead.
|
|
||||||
#define EXPORT_TEMPLATE_DECLARE_MSVC_HACK(export, _)
|
|
||||||
#define EXPORT_TEMPLATE_DEFINE_MSVC_HACK(export, _) export
|
|
||||||
|
|
||||||
// EXPORT_TEMPLATE_STYLE is an internal helper macro that identifies which
|
|
||||||
// export style needs to be used for the provided FOO_EXPORT macro definition.
|
|
||||||
// "", "__attribute__(...)", and "__declspec(dllimport)" are mapped
|
|
||||||
// to "DEFAULT"; while "__declspec(dllexport)" is mapped to "MSVC_HACK".
|
|
||||||
//
|
|
||||||
// It's implemented with token pasting to transform the __attribute__ and
|
|
||||||
// __declspec annotations into macro invocations. E.g., if FOO_EXPORT is
|
|
||||||
// defined as "__declspec(dllimport)", it undergoes the following sequence of
|
|
||||||
// macro substitutions:
|
|
||||||
// EXPORT_TEMPLATE_STYLE(FOO_EXPORT, )
|
|
||||||
// EXPORT_TEMPLATE_STYLE_2(__declspec(dllimport), )
|
|
||||||
// EXPORT_TEMPLATE_STYLE_3(EXPORT_TEMPLATE_STYLE_MATCH__declspec(dllimport))
|
|
||||||
// EXPORT_TEMPLATE_STYLE_MATCH__declspec(dllimport)
|
|
||||||
// EXPORT_TEMPLATE_STYLE_MATCH_DECLSPEC_dllimport
|
|
||||||
// DEFAULT
|
|
||||||
#define EXPORT_TEMPLATE_STYLE(export, _) EXPORT_TEMPLATE_STYLE_2(export, )
|
|
||||||
#define EXPORT_TEMPLATE_STYLE_2(export, _) \
|
|
||||||
EXPORT_TEMPLATE_STYLE_3( \
|
|
||||||
EXPORT_TEMPLATE_STYLE_MATCH_foj3FJo5StF0OvIzl7oMxA##export)
|
|
||||||
#define EXPORT_TEMPLATE_STYLE_3(style) style
|
|
||||||
|
|
||||||
// Internal helper macros for EXPORT_TEMPLATE_STYLE.
|
|
||||||
//
|
|
||||||
// XXX: C++ reserves all identifiers containing "__" for the implementation,
|
|
||||||
// but "__attribute__" and "__declspec" already contain "__" and the token-paste
|
|
||||||
// operator can only add characters; not remove them. To minimize the risk of
|
|
||||||
// conflict with implementations, we include "foj3FJo5StF0OvIzl7oMxA" (a random
|
|
||||||
// 128-bit string, encoded in Base64) in the macro name.
|
|
||||||
#define EXPORT_TEMPLATE_STYLE_MATCH_foj3FJo5StF0OvIzl7oMxA DEFAULT
|
|
||||||
#define EXPORT_TEMPLATE_STYLE_MATCH_foj3FJo5StF0OvIzl7oMxA__attribute__(...) \
|
|
||||||
DEFAULT
|
|
||||||
#define EXPORT_TEMPLATE_STYLE_MATCH_foj3FJo5StF0OvIzl7oMxA__declspec(arg) \
|
|
||||||
EXPORT_TEMPLATE_STYLE_MATCH_DECLSPEC_##arg
|
|
||||||
|
|
||||||
// Internal helper macros for EXPORT_TEMPLATE_STYLE.
|
|
||||||
#define EXPORT_TEMPLATE_STYLE_MATCH_DECLSPEC_dllexport MSVC_HACK
|
|
||||||
#define EXPORT_TEMPLATE_STYLE_MATCH_DECLSPEC_dllimport DEFAULT
|
|
||||||
|
|
||||||
// Sanity checks.
|
|
||||||
//
|
|
||||||
// EXPORT_TEMPLATE_TEST uses the same macro invocation pattern as
|
|
||||||
// EXPORT_TEMPLATE_DECLARE and EXPORT_TEMPLATE_DEFINE do to check that they're
|
|
||||||
// working correctly. When they're working correctly, the sequence of macro
|
|
||||||
// replacements should go something like:
|
|
||||||
//
|
|
||||||
// EXPORT_TEMPLATE_TEST(DEFAULT, __declspec(dllimport));
|
|
||||||
//
|
|
||||||
// static_assert(EXPORT_TEMPLATE_INVOKE(TEST_DEFAULT,
|
|
||||||
// EXPORT_TEMPLATE_STYLE(__declspec(dllimport), ),
|
|
||||||
// __declspec(dllimport)), "__declspec(dllimport)");
|
|
||||||
//
|
|
||||||
// static_assert(EXPORT_TEMPLATE_INVOKE(TEST_DEFAULT,
|
|
||||||
// DEFAULT, __declspec(dllimport)), "__declspec(dllimport)");
|
|
||||||
//
|
|
||||||
// static_assert(EXPORT_TEMPLATE_TEST_DEFAULT_DEFAULT(
|
|
||||||
// __declspec(dllimport)), "__declspec(dllimport)");
|
|
||||||
//
|
|
||||||
// static_assert(true, "__declspec(dllimport)");
|
|
||||||
//
|
|
||||||
// When they're not working correctly, a syntax error should occur instead.
|
|
||||||
#define EXPORT_TEMPLATE_TEST(want, export) \
|
|
||||||
static_assert(EXPORT_TEMPLATE_INVOKE( \
|
|
||||||
TEST_##want, EXPORT_TEMPLATE_STYLE(export, ), export), \
|
|
||||||
#export)
|
|
||||||
#define EXPORT_TEMPLATE_TEST_DEFAULT_DEFAULT(...) true
|
|
||||||
#define EXPORT_TEMPLATE_TEST_MSVC_HACK_MSVC_HACK(...) true
|
|
||||||
|
|
||||||
EXPORT_TEMPLATE_TEST(DEFAULT, );
|
|
||||||
EXPORT_TEMPLATE_TEST(DEFAULT, __attribute__((visibility("default"))));
|
|
||||||
EXPORT_TEMPLATE_TEST(MSVC_HACK, __declspec(dllexport));
|
|
||||||
EXPORT_TEMPLATE_TEST(DEFAULT, __declspec(dllimport));
|
|
||||||
|
|
||||||
#undef EXPORT_TEMPLATE_TEST
|
|
||||||
#undef EXPORT_TEMPLATE_TEST_DEFAULT_DEFAULT
|
|
||||||
#undef EXPORT_TEMPLATE_TEST_MSVC_HACK_MSVC_HACK
|
|
||||||
|
|
||||||
#endif // V8_BASE_EXPORT_TEMPLATE_H_
|
|
@ -141,8 +141,7 @@ enum class CheckForMinusZeroMode : uint8_t {
|
|||||||
|
|
||||||
size_t hash_value(CheckForMinusZeroMode);
|
size_t hash_value(CheckForMinusZeroMode);
|
||||||
|
|
||||||
V8_EXPORT_PRIVATE std::ostream& operator<<(std::ostream&,
|
std::ostream& operator<<(std::ostream&, CheckForMinusZeroMode);
|
||||||
CheckForMinusZeroMode);
|
|
||||||
|
|
||||||
CheckForMinusZeroMode CheckMinusZeroModeOf(const Operator*) WARN_UNUSED_RESULT;
|
CheckForMinusZeroMode CheckMinusZeroModeOf(const Operator*) WARN_UNUSED_RESULT;
|
||||||
|
|
||||||
|
@ -16818,11 +16818,9 @@ template class Dictionary<NameDictionary, NameDictionaryShape, Handle<Name> >;
|
|||||||
template class Dictionary<GlobalDictionary, GlobalDictionaryShape,
|
template class Dictionary<GlobalDictionary, GlobalDictionaryShape,
|
||||||
Handle<Name> >;
|
Handle<Name> >;
|
||||||
|
|
||||||
template class EXPORT_TEMPLATE_DEFINE(V8_EXPORT_PRIVATE)
|
template class Dictionary<SeededNumberDictionary,
|
||||||
HashTable<SeededNumberDictionary, SeededNumberDictionaryShape, uint32_t>;
|
SeededNumberDictionaryShape,
|
||||||
|
uint32_t>;
|
||||||
template class EXPORT_TEMPLATE_DEFINE(V8_EXPORT_PRIVATE)
|
|
||||||
Dictionary<SeededNumberDictionary, SeededNumberDictionaryShape, uint32_t>;
|
|
||||||
|
|
||||||
template class Dictionary<UnseededNumberDictionary,
|
template class Dictionary<UnseededNumberDictionary,
|
||||||
UnseededNumberDictionaryShape,
|
UnseededNumberDictionaryShape,
|
||||||
@ -16900,6 +16898,10 @@ template Handle<NameDictionary>
|
|||||||
HashTable<NameDictionary, NameDictionaryShape, Handle<Name> >::
|
HashTable<NameDictionary, NameDictionaryShape, Handle<Name> >::
|
||||||
Shrink(Handle<NameDictionary>, Handle<Name>);
|
Shrink(Handle<NameDictionary>, Handle<Name>);
|
||||||
|
|
||||||
|
template Handle<SeededNumberDictionary>
|
||||||
|
HashTable<SeededNumberDictionary, SeededNumberDictionaryShape, uint32_t>::
|
||||||
|
Shrink(Handle<SeededNumberDictionary>, uint32_t);
|
||||||
|
|
||||||
template Handle<UnseededNumberDictionary>
|
template Handle<UnseededNumberDictionary>
|
||||||
HashTable<UnseededNumberDictionary, UnseededNumberDictionaryShape,
|
HashTable<UnseededNumberDictionary, UnseededNumberDictionaryShape,
|
||||||
uint32_t>::Shrink(Handle<UnseededNumberDictionary>, uint32_t);
|
uint32_t>::Shrink(Handle<UnseededNumberDictionary>, uint32_t);
|
||||||
@ -16939,6 +16941,9 @@ template Handle<NameDictionary>
|
|||||||
Dictionary<NameDictionary, NameDictionaryShape, Handle<Name> >::
|
Dictionary<NameDictionary, NameDictionaryShape, Handle<Name> >::
|
||||||
EnsureCapacity(Handle<NameDictionary>, int, Handle<Name>);
|
EnsureCapacity(Handle<NameDictionary>, int, Handle<Name>);
|
||||||
|
|
||||||
|
template int HashTable<SeededNumberDictionary, SeededNumberDictionaryShape,
|
||||||
|
uint32_t>::FindEntry(uint32_t);
|
||||||
|
|
||||||
template int NameDictionaryBase<NameDictionary, NameDictionaryShape>::FindEntry(
|
template int NameDictionaryBase<NameDictionary, NameDictionaryShape>::FindEntry(
|
||||||
Handle<Name>);
|
Handle<Name>);
|
||||||
|
|
||||||
@ -16986,16 +16991,6 @@ Dictionary<NameDictionary, NameDictionaryShape, Handle<Name>>::CollectKeysTo(
|
|||||||
dictionary,
|
dictionary,
|
||||||
KeyAccumulator* keys);
|
KeyAccumulator* keys);
|
||||||
|
|
||||||
template int
|
|
||||||
Dictionary<SeededNumberDictionary, SeededNumberDictionaryShape,
|
|
||||||
uint32_t>::AddEntry(Handle<SeededNumberDictionary> dictionary,
|
|
||||||
uint32_t key, Handle<Object> value,
|
|
||||||
PropertyDetails details, uint32_t hash);
|
|
||||||
|
|
||||||
template int
|
|
||||||
Dictionary<SeededNumberDictionary, SeededNumberDictionaryShape,
|
|
||||||
uint32_t>::NumberOfElementsFilterAttributes(PropertyFilter filter);
|
|
||||||
|
|
||||||
Handle<Object> JSObject::PrepareSlowElementsForSort(
|
Handle<Object> JSObject::PrepareSlowElementsForSort(
|
||||||
Handle<JSObject> object, uint32_t limit) {
|
Handle<JSObject> object, uint32_t limit) {
|
||||||
DCHECK(object->HasDictionaryElements());
|
DCHECK(object->HasDictionaryElements());
|
||||||
|
@ -1189,7 +1189,7 @@ class Object {
|
|||||||
inline double Number() const;
|
inline double Number() const;
|
||||||
INLINE(bool IsNaN() const);
|
INLINE(bool IsNaN() const);
|
||||||
INLINE(bool IsMinusZero() const);
|
INLINE(bool IsMinusZero() const);
|
||||||
V8_EXPORT_PRIVATE bool ToInt32(int32_t* value);
|
bool ToInt32(int32_t* value);
|
||||||
inline bool ToUint32(uint32_t* value);
|
inline bool ToUint32(uint32_t* value);
|
||||||
|
|
||||||
inline Representation OptimalRepresentation();
|
inline Representation OptimalRepresentation();
|
||||||
|
@ -7,9 +7,6 @@
|
|||||||
|
|
||||||
#include "src/objects/hash-table.h"
|
#include "src/objects/hash-table.h"
|
||||||
|
|
||||||
#include "src/base/export-template.h"
|
|
||||||
#include "src/globals.h"
|
|
||||||
|
|
||||||
// Has to be the last include (doesn't have include guards):
|
// Has to be the last include (doesn't have include guards):
|
||||||
#include "src/objects/object-macros.h"
|
#include "src/objects/object-macros.h"
|
||||||
|
|
||||||
@ -356,12 +353,6 @@ class UnseededNumberDictionary
|
|||||||
static const int kEntryDetailsIndex = 2;
|
static const int kEntryDetailsIndex = 2;
|
||||||
};
|
};
|
||||||
|
|
||||||
extern template class EXPORT_TEMPLATE_DECLARE(V8_EXPORT_PRIVATE)
|
|
||||||
HashTable<SeededNumberDictionary, SeededNumberDictionaryShape, uint32_t>;
|
|
||||||
|
|
||||||
extern template class EXPORT_TEMPLATE_DECLARE(V8_EXPORT_PRIVATE)
|
|
||||||
Dictionary<SeededNumberDictionary, SeededNumberDictionaryShape, uint32_t>;
|
|
||||||
|
|
||||||
} // namespace internal
|
} // namespace internal
|
||||||
} // namespace v8
|
} // namespace v8
|
||||||
|
|
||||||
|
@ -7,9 +7,6 @@
|
|||||||
|
|
||||||
#include "src/objects.h"
|
#include "src/objects.h"
|
||||||
|
|
||||||
#include "src/base/compiler-specific.h"
|
|
||||||
#include "src/globals.h"
|
|
||||||
|
|
||||||
// Has to be the last include (doesn't have include guards):
|
// Has to be the last include (doesn't have include guards):
|
||||||
#include "src/objects/object-macros.h"
|
#include "src/objects/object-macros.h"
|
||||||
|
|
||||||
@ -66,7 +63,7 @@ class BaseShape {
|
|||||||
static inline Map* GetMap(Isolate* isolate);
|
static inline Map* GetMap(Isolate* isolate);
|
||||||
};
|
};
|
||||||
|
|
||||||
class V8_EXPORT_PRIVATE HashTableBase : public NON_EXPORTED_BASE(FixedArray) {
|
class HashTableBase : public FixedArray {
|
||||||
public:
|
public:
|
||||||
// Returns the number of elements in the hash table.
|
// Returns the number of elements in the hash table.
|
||||||
inline int NumberOfElements();
|
inline int NumberOfElements();
|
||||||
|
@ -979,7 +979,7 @@ void PRINTF_FORMAT(2, 3) PrintIsolate(void* isolate, const char* format, ...);
|
|||||||
// Safe formatting print. Ensures that str is always null-terminated.
|
// Safe formatting print. Ensures that str is always null-terminated.
|
||||||
// Returns the number of chars written, or -1 if output was truncated.
|
// Returns the number of chars written, or -1 if output was truncated.
|
||||||
int PRINTF_FORMAT(2, 3) SNPrintF(Vector<char> str, const char* format, ...);
|
int PRINTF_FORMAT(2, 3) SNPrintF(Vector<char> str, const char* format, ...);
|
||||||
V8_EXPORT_PRIVATE int PRINTF_FORMAT(2, 0)
|
int PRINTF_FORMAT(2, 0)
|
||||||
VSNPrintF(Vector<char> str, const char* format, va_list args);
|
VSNPrintF(Vector<char> str, const char* format, va_list args);
|
||||||
|
|
||||||
void StrNCpy(Vector<char> dest, const char* src, size_t n);
|
void StrNCpy(Vector<char> dest, const char* src, size_t n);
|
||||||
|
@ -1881,7 +1881,6 @@
|
|||||||
'base/division-by-constant.h',
|
'base/division-by-constant.h',
|
||||||
'base/debug/stack_trace.cc',
|
'base/debug/stack_trace.cc',
|
||||||
'base/debug/stack_trace.h',
|
'base/debug/stack_trace.h',
|
||||||
'base/export-template.h',
|
|
||||||
'base/file-utils.cc',
|
'base/file-utils.cc',
|
||||||
'base/file-utils.h',
|
'base/file-utils.h',
|
||||||
'base/flags.h',
|
'base/flags.h',
|
||||||
|
@ -5,7 +5,6 @@
|
|||||||
#ifndef V8_WASM_LOCAL_DECL_ENCODER_H_
|
#ifndef V8_WASM_LOCAL_DECL_ENCODER_H_
|
||||||
#define V8_WASM_LOCAL_DECL_ENCODER_H_
|
#define V8_WASM_LOCAL_DECL_ENCODER_H_
|
||||||
|
|
||||||
#include "src/globals.h"
|
|
||||||
#include "src/wasm/wasm-opcodes.h"
|
#include "src/wasm/wasm-opcodes.h"
|
||||||
#include "src/zone/zone-containers.h"
|
#include "src/zone/zone-containers.h"
|
||||||
#include "src/zone/zone.h"
|
#include "src/zone/zone.h"
|
||||||
@ -16,7 +15,7 @@ namespace wasm {
|
|||||||
|
|
||||||
// A helper for encoding local declarations prepended to the body of a
|
// A helper for encoding local declarations prepended to the body of a
|
||||||
// function.
|
// function.
|
||||||
class V8_EXPORT_PRIVATE LocalDeclEncoder {
|
class LocalDeclEncoder {
|
||||||
public:
|
public:
|
||||||
explicit LocalDeclEncoder(Zone* zone, FunctionSig* s = nullptr)
|
explicit LocalDeclEncoder(Zone* zone, FunctionSig* s = nullptr)
|
||||||
: sig(s), local_decls(zone), total(0) {}
|
: sig(s), local_decls(zone), total(0) {}
|
||||||
|
@ -22,7 +22,7 @@ class Isolate;
|
|||||||
namespace wasm {
|
namespace wasm {
|
||||||
|
|
||||||
// Base class for Result<T>.
|
// Base class for Result<T>.
|
||||||
class V8_EXPORT_PRIVATE ResultBase {
|
class ResultBase {
|
||||||
protected:
|
protected:
|
||||||
ResultBase(ResultBase&& other)
|
ResultBase(ResultBase&& other)
|
||||||
: error_offset_(other.error_offset_),
|
: error_offset_(other.error_offset_),
|
||||||
|
@ -187,7 +187,7 @@ v8_executable("unittests") {
|
|||||||
#}],
|
#}],
|
||||||
|
|
||||||
deps = [
|
deps = [
|
||||||
"../..:v8_for_testing",
|
"../..:v8_builtins_generators",
|
||||||
"../..:v8_libbase",
|
"../..:v8_libbase",
|
||||||
"../..:v8_libplatform",
|
"../..:v8_libplatform",
|
||||||
"//build/config/sanitizers:deps",
|
"//build/config/sanitizers:deps",
|
||||||
@ -200,6 +200,17 @@ v8_executable("unittests") {
|
|||||||
deps += [ "//third_party/icu" ]
|
deps += [ "//third_party/icu" ]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
defines = []
|
||||||
|
|
||||||
|
if (is_component_build) {
|
||||||
|
# unittests can't be built against a shared library, so we
|
||||||
|
# need to depend on the underlying static target in that case.
|
||||||
|
deps += [ "../..:v8_maybe_snapshot" ]
|
||||||
|
defines += [ "BUILDING_V8_SHARED" ]
|
||||||
|
} else {
|
||||||
|
deps += [ "../..:v8" ]
|
||||||
|
}
|
||||||
|
|
||||||
if (is_win) {
|
if (is_win) {
|
||||||
# This warning is benignly triggered by the U16 and U32 macros in
|
# This warning is benignly triggered by the U16 and U32 macros in
|
||||||
# bytecode-utils.h.
|
# bytecode-utils.h.
|
||||||
|
Loading…
Reference in New Issue
Block a user