Remove inline header includes from non-inline headers (2).
authormstarzinger <mstarzinger@chromium.org>
Thu, 13 Aug 2015 15:30:04 +0000 (08:30 -0700)
committerCommit bot <commit-bot@chromium.org>
Thu, 13 Aug 2015 15:30:16 +0000 (15:30 +0000)
This tries to remove includes of "-inl.h" headers from normal ".h"
headers, thereby reducing the chance of any cyclic dependencies and
decreasing the average size of our compilation units.

Note that this change still leaves 5 violations of that rule in the
code. It only tackles "node.h" including "types-inl.h".

R=titzer@chromium.org

Review URL: https://codereview.chromium.org/1288053004

Cr-Commit-Position: refs/heads/master@{#30161}

src/compiler/common-node-cache.cc
src/compiler/js-frame-specialization.h
src/compiler/js-type-feedback-lowering.h
src/compiler/linkage.h
src/compiler/node.h
src/compiler/source-position.cc
src/conversions-inl.h
src/conversions.h
src/isolate.h
src/sampler.h

index e7f7436a0bd76624ce182e3dc4797b31b361c88a..b005c952dd0e0b40fc046fa76f08d5ebf1d3f915 100644 (file)
@@ -6,6 +6,7 @@
 
 #include "src/assembler.h"
 #include "src/compiler/node.h"
+#include "src/objects-inl.h"  // TODO(mstarzinger): Temporary cycle breaker!
 
 namespace v8 {
 namespace internal {
index c6fc561c5cfe479711b9bc182d8f45512e6a25b5..90b3ca5e39b97515aa83cbda80e94f001511a45c 100644 (file)
@@ -9,6 +9,10 @@
 
 namespace v8 {
 namespace internal {
+
+// Forward declarations.
+class JavaScriptFrame;
+
 namespace compiler {
 
 // Forward declarations.
index 19f4df0ffa1845ede72d94c37ce1a3bf1d55e486..db0fbdd626a050bd738e7d41516f7916588d00f1 100644 (file)
 
 namespace v8 {
 namespace internal {
+
+// Forward declarations.
+class Factory;
+
 namespace compiler {
 
 // Forward declarations.
index 9f8b2d76f39d399c24cd083b7df78aee3a71e646..623c9109d96b93b271c61daf5d811b2d694933cf 100644 (file)
@@ -17,6 +17,7 @@ namespace v8 {
 namespace internal {
 
 class CallInterfaceDescriptor;
+class CompilationInfo;
 
 namespace compiler {
 
index 6557635a2ecfb76e60865795604316d9e2c49556..a638df343df61c1063785ee446e769b3522f1fa7 100644 (file)
@@ -7,7 +7,7 @@
 
 #include "src/compiler/opcodes.h"
 #include "src/compiler/operator.h"
-#include "src/types-inl.h"
+#include "src/types.h"
 #include "src/zone-containers.h"
 
 namespace v8 {
index 48361ecac771d92a2899fae83dcc014b02002424..aba77b36f37895550dffe6c52104aa541b0c2d99 100644 (file)
@@ -5,6 +5,7 @@
 #include "src/compiler/source-position.h"
 #include "src/compiler/graph.h"
 #include "src/compiler/node-aux-data.h"
+#include "src/objects-inl.h"  // TODO(mstarzinger): Temporary cycle breaker!
 
 namespace v8 {
 namespace internal {
index d9f16ade2eda6b69e2d2c2e3892acc0bd5ffea63..42d617d01720346d7a1667a127ffc643fe4f18b4 100644 (file)
@@ -160,6 +160,11 @@ size_t NumberToSize(Isolate* isolate, Object* number) {
 }
 
 
+uint32_t DoubleToUint32(double x) {
+  return static_cast<uint32_t>(DoubleToInt32(x));
+}
+
+
 template <class Iterator, class EndMark>
 bool SubStringEquals(Iterator* current,
                      EndMark end,
index 666c2efb12d51c410a4baa9eace09fe339c923bd..9b6d83b6bb0cd1271b6282029c3082828acda953 100644 (file)
@@ -89,9 +89,7 @@ inline int32_t DoubleToInt32(double x);
 
 
 // This function should match the exact semantics of ECMA-262 9.6.
-inline uint32_t DoubleToUint32(double x) {
-  return static_cast<uint32_t>(DoubleToInt32(x));
-}
+inline uint32_t DoubleToUint32(double x);
 
 
 // Enumeration for allowing octals and ignoring junk when converting
@@ -156,19 +154,19 @@ static inline bool IsMinusZero(double value) {
 }
 
 
-static inline bool IsSmiDouble(double value);
+inline bool IsSmiDouble(double value);
 
 
 // Integer32 is an integer that can be represented as a signed 32-bit
 // integer. It has to be in the range [-2^31, 2^31 - 1].
 // We also have to check for negative 0 as it is not an Integer32.
-static inline bool IsInt32Double(double value);
+inline bool IsInt32Double(double value);
 
 
 // UInteger32 is an integer that can be represented as an unsigned 32-bit
 // integer. It has to be in the range [0, 2^32 - 1].
 // We also have to check for negative 0 as it is not a UInteger32.
-static inline bool IsUint32Double(double value);
+inline bool IsUint32Double(double value);
 
 
 // Convert from Number object to C integer.
index 0445fbe1ef35c14d8d40ff953e478452f21c2905..bb1fa417b26244136fd47faf537ef0b5d589c81b 100644 (file)
@@ -64,6 +64,7 @@ class HStatistics;
 class HTracer;
 class InlineRuntimeFunctionsTable;
 class InnerPointerToCodeCache;
+class Logger;
 class MaterializedObjectStore;
 class CodeAgingHelper;
 class RegExpStack;
index 120260dbf55203bc6712d429ddc55c9a35c9bb1e..bfdf9612291164a3a07c5e7bbc0a9f03673b79fc 100644 (file)
@@ -8,6 +8,7 @@
 #include "include/v8.h"
 
 #include "src/base/atomicops.h"
+#include "src/base/platform/time.h"
 #include "src/frames.h"
 #include "src/globals.h"