Reviewers: Vitaly Repeshko, Dmitry Titov,

Message:
Some notes:

1. ON_BAILOUT and IsDeadCheck macros probably have a bug if API function is
called by external client when current isolate is not set.

2. This is by no means a complete reduction in TLS fetches of isolates. Here are
some of the places from my notes:
* There are redundant TLS fetches in a few macros in api.cc (ENTER_V8,
EXCEPTION_* and others)
* Every "v8::HandleScope scope;" declaration is a TLS fetch, redundant in most
places
* There is a lot of tls fetches in CpuProfile-related classes

I will do another scrub on all these issues once isolates land in bleeding_edge

BUG=
TEST=


Description:
Adding 'isolate' argument to LOG macro to get rid of multiple TLS fetches.

The patch also passes 'isolate' argument to a couple of validation
macros/functions in api.cc (IsDeadCheck, ON_BAILOUT), as well as eliminates some
redundant isolate tls fetches throughout api.cc (such as uses of HEAP and
FACTORY macros)



Please review this at http://codereview.chromium.org/6696042/

SVN Base: https://v8.googlecode.com/svn/branches/experimental/isolates

Affected files:
  M src/api.cc
  M src/builtins.cc
  M src/code-stubs.cc
  M src/compiler.cc
  M src/cpu-profiler.h
  M src/global-handles.h
  M src/global-handles.cc
  M src/handles.h
  M src/handles.cc
  M src/heap-profiler.cc
  M src/heap.cc
  M src/ia32/assembler-ia32.cc
  M src/ia32/regexp-macro-assembler-ia32.cc
  M src/ia32/stub-cache-ia32.cc
  M src/ic.cc
  M src/isolate.cc
  M src/jsregexp.cc
  M src/log.h
  M src/log.cc
  M src/mark-compact.cc
  M src/objects.cc
  M src/platform-cygwin.cc
  M src/platform-freebsd.cc
  M src/platform-linux.cc
  M src/platform-macos.cc
  M src/platform-openbsd.cc
  M src/platform-solaris.cc
  M src/platform-win32.cc
  M src/serialize.cc
  M src/spaces.cc
  M src/string-stream.cc
  M src/stub-cache.h
  M src/stub-cache.cc
  M src/top.cc
  M src/vm-state-inl.h
  M src/x64/assembler-x64.cc
  M src/x64/regexp-macro-assembler-x64.cc
  M src/x64/stub-cache-x64.cc


--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to