From: svenpanne@chromium.org Date: Mon, 11 Jul 2011 09:12:17 +0000 (+0000) Subject: Drastically reduce the transitive dependencies of jsregexp.h, making it (almost) X-Git-Tag: upstream/4.7.83~18935 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c71cf782e8d2f35c147afaa08ee4fb110b0ad8e8;p=platform%2Fupstream%2Fv8.git Drastically reduce the transitive dependencies of jsregexp.h, making it (almost) architecture-independent. jsregexp.h is itself included transitively quite a lot, and by getting rid of 19 of its dependencies (which even included things like src/cpu.h, the various assemblers, etc.), the recompilation behaviour is a bit less funny than it was. Review URL: http://codereview.chromium.org/7331014 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8589 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- diff --git a/src/arm/regexp-macro-assembler-arm.h b/src/arm/regexp-macro-assembler-arm.h index d771e40..0e65386 100644 --- a/src/arm/regexp-macro-assembler-arm.h +++ b/src/arm/regexp-macro-assembler-arm.h @@ -28,6 +28,9 @@ #ifndef V8_ARM_REGEXP_MACRO_ASSEMBLER_ARM_H_ #define V8_ARM_REGEXP_MACRO_ASSEMBLER_ARM_H_ +#include "arm/assembler-arm.h" +#include "arm/assembler-arm-inl.h" + namespace v8 { namespace internal { diff --git a/src/ia32/regexp-macro-assembler-ia32.h b/src/ia32/regexp-macro-assembler-ia32.h index 21c86d0..d504470 100644 --- a/src/ia32/regexp-macro-assembler-ia32.h +++ b/src/ia32/regexp-macro-assembler-ia32.h @@ -28,6 +28,9 @@ #ifndef V8_IA32_REGEXP_MACRO_ASSEMBLER_IA32_H_ #define V8_IA32_REGEXP_MACRO_ASSEMBLER_IA32_H_ +#include "ia32/assembler-ia32.h" +#include "ia32/assembler-ia32-inl.h" + namespace v8 { namespace internal { diff --git a/src/jsregexp.h b/src/jsregexp.h index 58958d8..13f9e2e 100644 --- a/src/jsregexp.h +++ b/src/jsregexp.h @@ -29,7 +29,6 @@ #define V8_JSREGEXP_H_ #include "allocation.h" -#include "macro-assembler.h" #include "zone-inl.h" namespace v8 { diff --git a/src/mips/regexp-macro-assembler-mips.h b/src/mips/regexp-macro-assembler-mips.h index ad7ada5..7fe0c88 100644 --- a/src/mips/regexp-macro-assembler-mips.h +++ b/src/mips/regexp-macro-assembler-mips.h @@ -29,6 +29,12 @@ #ifndef V8_MIPS_REGEXP_MACRO_ASSEMBLER_MIPS_H_ #define V8_MIPS_REGEXP_MACRO_ASSEMBLER_MIPS_H_ +#include "mips/assembler-mips.h" +#include "mips/assembler-mips-inl.h" +#include "macro-assembler.h" +#include "code.h" +#include "mips/macro-assembler-mips.h" + namespace v8 { namespace internal { @@ -249,4 +255,3 @@ class RegExpMacroAssemblerMIPS: public NativeRegExpMacroAssembler { }} // namespace v8::internal #endif // V8_MIPS_REGEXP_MACRO_ASSEMBLER_MIPS_H_ - diff --git a/src/objects-visiting.h b/src/objects-visiting.h index a2b1c4f..cc64763 100644 --- a/src/objects-visiting.h +++ b/src/objects-visiting.h @@ -30,6 +30,22 @@ #include "allocation.h" +#if V8_TARGET_ARCH_IA32 +#include "ia32/assembler-ia32.h" +#include "ia32/assembler-ia32-inl.h" +#elif V8_TARGET_ARCH_X64 +#include "x64/assembler-x64.h" +#include "x64/assembler-x64-inl.h" +#elif V8_TARGET_ARCH_ARM +#include "arm/assembler-arm.h" +#include "arm/assembler-arm-inl.h" +#elif V8_TARGET_ARCH_MIPS +#include "mips/assembler-mips.h" +#include "mips/assembler-mips-inl.h" +#else +#error Unsupported target architecture. +#endif + // This file provides base classes and auxiliary methods for defining // static object visitors used during GC. // Visiting HeapObject body with a normal ObjectVisitor requires performing diff --git a/src/x64/regexp-macro-assembler-x64.h b/src/x64/regexp-macro-assembler-x64.h index 02b510f..7102225 100644 --- a/src/x64/regexp-macro-assembler-x64.h +++ b/src/x64/regexp-macro-assembler-x64.h @@ -28,6 +28,12 @@ #ifndef V8_X64_REGEXP_MACRO_ASSEMBLER_X64_H_ #define V8_X64_REGEXP_MACRO_ASSEMBLER_X64_H_ +#include "x64/assembler-x64.h" +#include "x64/assembler-x64-inl.h" +#include "macro-assembler.h" +#include "code.h" +#include "x64/macro-assembler-x64.h" + namespace v8 { namespace internal { diff --git a/test/cctest/test-regexp.cc b/test/cctest/test-regexp.cc index 6588c68..9f18b60 100644 --- a/test/cctest/test-regexp.cc +++ b/test/cctest/test-regexp.cc @@ -41,19 +41,25 @@ #ifdef V8_INTERPRETED_REGEXP #include "interpreter-irregexp.h" #else // V8_INTERPRETED_REGEXP +#include "macro-assembler.h" +#include "code.h" #ifdef V8_TARGET_ARCH_ARM +#include "arm/assembler-arm.h" #include "arm/macro-assembler-arm.h" #include "arm/regexp-macro-assembler-arm.h" #endif #ifdef V8_TARGET_ARCH_MIPS +#include "mips/assembler-mips.h" #include "mips/macro-assembler-mips.h" #include "mips/regexp-macro-assembler-mips.h" #endif #ifdef V8_TARGET_ARCH_X64 +#include "x64/assembler-x64.h" #include "x64/macro-assembler-x64.h" #include "x64/regexp-macro-assembler-x64.h" #endif #ifdef V8_TARGET_ARCH_IA32 +#include "ia32/assembler-ia32.h" #include "ia32/macro-assembler-ia32.h" #include "ia32/regexp-macro-assembler-ia32.h" #endif