Reviewers: Yang,
https://codereview.chromium.org/430213004/diff/1/src/serialize.cc
File src/serialize.cc (right):
https://codereview.chromium.org/430213004/diff/1/src/serialize.cc#newcode530
src/serialize.cc:530:
Add(ExternalReference::flush_icache_function(isolate).address(),
Comment in the start of this function says that "The following populates
all of the different type of external references into the
ExternalReferenceTable." But seems these external references were
missed. Even if current built-in snapshot does not use them, may be
worth to add them to table to avoid problems in future?
https://codereview.chromium.org/430213004/diff/1/src/serialize.cc#newcode546
src/serialize.cc:546:
Add(ExternalReference::address_of_zero().address(),
Seems address_of_zero(), address_of_uint8_max_value() and
heap_always_allocate_scope_depth() external references not used at all
in codebase now. What do you think is better - add them to table since
they can be used in future, or just remove them from ExternalReference
class?
https://codereview.chromium.org/430213004/diff/1/src/serialize.cc#newcode574
src/serialize.cc:574:
There are also few external references generated in math_exp_constants()
function. I am going to submit their registration in separate CL. Or I
can add them to this CL, which is better?
Description:
Register more ExternalReferences in serializer code.
Please review this at https://codereview.chromium.org/430213004/
SVN Base: http://v8.googlecode.com/svn/branches/bleeding_edge/
Affected files (+45, -0 lines):
M src/serialize.cc
Index: src/serialize.cc
===================================================================
--- src/serialize.cc (revision 22763)
+++ src/serialize.cc (working copy)
@@ -527,6 +527,51 @@
67,
"Debug::restarter_frame_function_pointer_address()");
+ Add(ExternalReference::flush_icache_function(isolate).address(),
+ UNCLASSIFIED,
+ 68,
+ "Isolate::flush_icache_function");
+ Add(ExternalReference::log_enter_external_function(isolate).address(),
+ UNCLASSIFIED,
+ 69,
+ "Isolate::log_enter_external_function");
+ Add(ExternalReference::log_leave_external_function(isolate).address(),
+ UNCLASSIFIED,
+ 70,
+ "Isolate::log_leave_external_function");
+ Add(ExternalReference::address_of_minus_one_half().address(),
+ UNCLASSIFIED,
+ 71,
+ "Isolate::address_of_minus_one_half");
+ Add(ExternalReference::address_of_zero().address(),
+ UNCLASSIFIED,
+ 72,
+ "Isolate::address_of_zero");
+ Add(ExternalReference::address_of_uint8_max_value().address(),
+ UNCLASSIFIED,
+ 73,
+ "Isolate::address_of_uint8_max_value");
+ Add(ExternalReference::math_log_double_function(isolate).address(),
+ UNCLASSIFIED,
+ 74,
+ "Isolate::math_log_double_function");
+ Add(ExternalReference::math_exp_log_table().address(),
+ UNCLASSIFIED,
+ 75,
+ "Isolate::math_exp_log_table");
+ Add(ExternalReference::stress_deopt_count(isolate).address(),
+ UNCLASSIFIED,
+ 76,
+ "Isolate::stress_deopt_count");
+ Add(ExternalReference::debug_is_active_address(isolate).address(),
+ UNCLASSIFIED,
+ 77,
+ "Isolate::debug_is_active_address");
+
Add(ExternalReference::heap_always_allocate_scope_depth(isolate).address(),
+ UNCLASSIFIED,
+ 78,
+ "Isolate::heap_always_allocate_scope_depth");
+
// Add a small set of deopt entry addresses to encoder without
generating the
// deopt table code, which isn't possible at deserialization time.
HandleScope scope(isolate);
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.