Index: src/heap.h |
=================================================================== |
--- src/heap.h (revision 6213) |
+++ src/heap.h (working copy) |
@@ -118,12 +118,22 @@ |
V(Smi, real_stack_limit, RealStackLimit) \ |
V(StringDictionary, intrinsic_function_names, IntrinsicFunctionNames) \ |
+#if V8_TARGET_ARCH_ARM |
antonm
2011/01/21 17:56:36
Maybe we should restructure that differently:
I'd
Zaheer
2011/01/24 09:43:31
Agree. i simplified one more bit and removed STRON
antonm
2011/01/26 11:36:37
Nice, thanks.
On 2011/01/24 09:43:31, zaheer wrot
|
+#define STRONG_ROOT_LIST_ARM(V) \ |
+ V(Code, direct_c_entry_code, DirectCEntryCode) |
+#else |
+#define STRONG_ROOT_LIST_ARM(V) |
+#endif |
+ |
#if V8_TARGET_ARCH_ARM && !V8_INTERPRETED_REGEXP |
#define STRONG_ROOT_LIST(V) \ |
UNCONDITIONAL_STRONG_ROOT_LIST(V) \ |
+ STRONG_ROOT_LIST_ARM(V) \ |
V(Code, re_c_entry_code, RegExpCEntryCode) |
#else |
-#define STRONG_ROOT_LIST(V) UNCONDITIONAL_STRONG_ROOT_LIST(V) |
+#define STRONG_ROOT_LIST(V) \ |
+ UNCONDITIONAL_STRONG_ROOT_LIST(V) \ |
+ STRONG_ROOT_LIST_ARM(V) |
#endif |
#define ROOT_LIST(V) \ |
@@ -1302,12 +1312,13 @@ |
static bool CreateInitialMaps(); |
static bool CreateInitialObjects(); |
- // These four Create*EntryStub functions are here and forced to not be inlined |
+ // These five Create*EntryStub functions are here and forced to not be inlined |
// because of a gcc-4.4 bug that assigns wrong vtable entries. |
NO_INLINE(static void CreateCEntryStub()); |
NO_INLINE(static void CreateJSEntryStub()); |
NO_INLINE(static void CreateJSConstructEntryStub()); |
NO_INLINE(static void CreateRegExpCEntryStub()); |
+ NO_INLINE(static void CreateDirectCEntryStub()); |
static void CreateFixedStubs(); |