Update to V8 with partial snapshots. This is taken from the partial_snapshot branch of V8.
diff --git a/src/log.cc b/src/log.cc
index 5de7429..cf2fc97 100644
--- a/src/log.cc
+++ b/src/log.cc
@@ -573,6 +573,20 @@
 }
 
 
+void Logger::LogProfileMarker(Vector<const char> marker) {
+#ifdef ENABLE_LOGGING_AND_PROFILING
+  if (!Log::IsEnabled() || !FLAG_prof) return;
+  LogMessageBuilder msg;
+  for (int i = 0; i < marker.length(); i++) {
+    char c = marker[i];
+    msg.Append(c);
+  }
+  msg.Append('\n');
+  msg.WriteToLogFile();
+#endif
+}
+
+
 void Logger::ApiIndexedSecurityCheck(uint32_t index) {
 #ifdef ENABLE_LOGGING_AND_PROFILING
   if (!Log::IsEnabled() || !FLAG_log_api) return;
@@ -1261,7 +1275,9 @@
       case Code::FUNCTION:
         return;  // We log this later using LogCompiledFunctions.
       case Code::STUB:
-        description = CodeStub::MajorName(code_object->major_key());
+        description = CodeStub::MajorName(code_object->major_key(), true);
+        if (description == NULL)
+          description = "A stub from the snapshot";
         tag = Logger::STUB_TAG;
         break;
       case Code::BUILTIN:
@@ -1294,6 +1310,15 @@
 }
 
 
+void Logger::LogCodeObjects() {
+  AssertNoAllocation no_alloc;
+  HeapIterator iterator;
+  for (HeapObject* obj = iterator.next(); obj != NULL; obj = iterator.next()) {
+    if (obj->IsCode()) LogCodeObject(obj);
+  }
+}
+
+
 void Logger::LogCompiledFunctions() {
   HandleScope scope;
   const int compiled_funcs_count = EnumerateCompiledFunctions(NULL);