v8随心记

  因为node原因,研究v8已经有段时间了,但是一直也没有抽空写点什么,现在想想有好多当时清晰的东西又模糊了。哎,伤心的很啊。但是一时又想不起什么章法,所以只能随手胡乱写了。

下载、编译:

https://github.com/v8/v8-git-mirror

https://github.com/v8/v8-git-mirror/blob/master/DEPS

http://www.chromium.org/developers/how-tos/install-depot-tools

  最近在看的是v8-4.2.77的代码,真的是不想和以前一样下载cygwin这些第三方工具,后来通过修改gyp生成的[js2c.vcxproj、v8_snapshot.vcxproj、cctest(resources.vcxproj)],可以只需要[icu]这一个第三方工具,就编译生成v8、cctest、process和shell等程序。

---------------------------------------------------------------------------------------------------

源码:

third-party: {

  fdlibm: { 

    [ FDLIBM (Freely Distributable LIBM) is a C math library for machines that support IEEE 754 floating-point arithmetic ]

  }

}

tools: {

  thread-sanitizer: {

    [include: zone.cc]

    [ThreadSanitizer又叫TSan,是一个检查线程Data Race的C/C++工具。它集成在新版的gcc和clang中,通过编译时加-fsanitize=thread,可以在运行时检测出Data Race的问题。]

  }

}

Isolate::Init {

  [call]: 

  [CHECK]Max(Min(base::SysInfo::NumberOfProcessors(), 4), 1)

  optimizing_compiler_thread_ = new OptimizingCompilerThread(this);
  optimizing_compiler_thread_->Start();

}

原文地址:https://www.cnblogs.com/wangnan1979/p/4666706.html