Revision: 14646
Author:   [email protected]
Date:     Mon May 13 07:18:43 2013
Log: Enable native implementation of array buffer and typed arrays in d8 and tests.

[email protected]
BUG=

Review URL: https://codereview.chromium.org/15059009
http://code.google.com/p/v8/source/detail?r=14646

Modified:
 /branches/bleeding_edge/src/d8.cc
 /branches/bleeding_edge/test/cctest/cctest.cc
 /branches/bleeding_edge/test/cctest/test-api.cc
 /branches/bleeding_edge/test/cctest/test-heap.cc
 /branches/bleeding_edge/test/mjsunit/debug-script.js

=======================================
--- /branches/bleeding_edge/src/d8.cc   Wed May  8 09:17:23 2013
+++ /branches/bleeding_edge/src/d8.cc   Mon May 13 07:18:43 2013
@@ -2169,6 +2169,10 @@

 int Shell::Main(int argc, char* argv[]) {
   if (!SetOptions(argc, argv)) return 1;
+#ifndef V8_SHARED
+  i::FLAG_harmony_array_buffer = true;
+  i::FLAG_harmony_typed_arrays = true;
+#endif
   int result = 0;
   Isolate* isolate = Isolate::GetCurrent();
   DumbLineEditor dumb_line_editor(isolate);
=======================================
--- /branches/bleeding_edge/test/cctest/cctest.cc       Thu May  2 13:18:42 2013
+++ /branches/bleeding_edge/test/cctest/cctest.cc       Mon May 13 07:18:43 2013
@@ -98,6 +98,8 @@

 int main(int argc, char* argv[]) {
   v8::internal::FlagList::SetFlagsFromCommandLine(&argc, argv, true);
+  v8::internal::FLAG_harmony_array_buffer = true;
+  v8::internal::FLAG_harmony_typed_arrays = true;
   CcTest::set_default_isolate(v8::Isolate::GetCurrent());
   CHECK(CcTest::default_isolate() != NULL);
   int tests_run = 0;
=======================================
--- /branches/bleeding_edge/test/cctest/test-api.cc     Mon May 13 07:18:05 2013
+++ /branches/bleeding_edge/test/cctest/test-api.cc     Mon May 13 07:18:43 2013
@@ -12081,6 +12081,13 @@


 TEST(SetFunctionEntryHook) {
+  // FunctionEntryHook does not work well with experimental natives.
+  // Experimental natives are compiled during snapshot deserialization.
+  // This test breaks because InstallGetter (function from snapshot that
+ // only gets called from experimental natives) is compiled with entry hooks.
+  i::FLAG_harmony_typed_arrays = false;
+  i::FLAG_harmony_array_buffer = false;
+
   i::FLAG_allow_natives_syntax = true;
   i::FLAG_use_inlining = false;

=======================================
--- /branches/bleeding_edge/test/cctest/test-heap.cc Wed May 8 08:02:08 2013 +++ /branches/bleeding_edge/test/cctest/test-heap.cc Mon May 13 07:18:43 2013
@@ -2805,8 +2805,16 @@
   i::FLAG_stress_compaction = false;
   i::FLAG_allow_natives_syntax = true;
   i::FLAG_flush_code_incrementally = true;
+
+  // Experimental natives are compiled during snapshot deserialization.
+  // This test breaks because heap layout changes in a way that closure
+  // is visited before shared function info.
+  i::FLAG_harmony_typed_arrays = false;
+  i::FLAG_harmony_array_buffer = false;
+
   CcTest::InitializeVM();
   Isolate* isolate = Isolate::Current();
+  // Force experimental natives to compile to normalize heap layout.
   Heap* heap = isolate->heap();
   HandleScope scope(isolate);

=======================================
--- /branches/bleeding_edge/test/mjsunit/debug-script.js Fri Oct 12 06:49:12 2012 +++ /branches/bleeding_edge/test/mjsunit/debug-script.js Mon May 13 07:18:43 2013
@@ -60,7 +60,7 @@
 }

 // This has to be updated if the number of native scripts change.
-assertEquals(14, named_native_count);
+assertEquals(16, named_native_count);
 // If no snapshot is used, only the 'gc' extension is loaded.
 // If snapshot is used, all extensions are cached in the snapshot.
 assertTrue(extension_count == 1 || extension_count == 5);

--
--
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/groups/opt_out.


Reply via email to