Index: src/serialize.cc |
diff --git a/src/serialize.cc b/src/serialize.cc |
index d2fd1e4fca8f1756235565c4e83d57f1cbd79a6d..0261134defa820b1a8c961bc13d3332e3e0fd2d3 100644 |
--- a/src/serialize.cc |
+++ b/src/serialize.cc |
@@ -734,6 +734,20 @@ void ExternalReferenceTable::PopulateTable() { |
UNCLASSIFIED, |
17, |
"compare_doubles"); |
+#ifdef V8_NATIVE_REGEXP |
+ Add(ExternalReference::re_case_insensitive_compare_uc16().address(), |
+ UNCLASSIFIED, |
+ 17, |
Erik Corry
2009/08/28 09:47:03
Seems like you shouldn't be reusing 17 here.
Lasse Reichstein
2009/08/28 11:43:15
Whoops.
|
+ "NativeRegExpMacroAssembler::CaseInsensitiveCompareUC16()"); |
+ Add(ExternalReference::re_check_stack_guard_state().address(), |
+ UNCLASSIFIED, |
+ 18, |
+ "RegExpMacroAssembler*::CheckStackGuardState()"); |
+ Add(ExternalReference::re_grow_stack().address(), |
+ UNCLASSIFIED, |
+ 19, |
+ "NativeRegExpMacroAssembler::GrowStack()"); |
+#endif |
} |
@@ -1119,6 +1133,11 @@ void Serializer::PutHeader() { |
#else |
writer_->PutC('0'); |
#endif |
+#ifdef V8_NATIVE_REGEXP |
+ writer_->PutC('N'); |
+#else // Interpreted regexp |
+ writer_->PutC('I'); |
+#endif |
// Write sizes of paged memory spaces. Allocate extra space for the old |
// and code spaces, because objects in new space will be promoted to them. |
writer_->PutC('S'); |
@@ -1475,6 +1494,11 @@ void Deserializer::GetHeader() { |
// synchronization tags. |
if (reader_.GetC() != '0') FATAL("Snapshot contains synchronization tags."); |
#endif |
+#ifdef V8_NATIVE_REGEXP |
+ reader_.ExpectC('N'); |
+#else // Interpreted regexp. |
+ reader_.ExpectC('I'); |
+#endif |
// Ensure sufficient capacity in paged memory spaces to avoid growth |
// during deserialization. |
reader_.ExpectC('S'); |