Reviewers: Vitaly Repeshko, Mads Ager,

Message:
We used to push Isolate pointer through into regexp generated code, and use it once inside. As it turned out, it is more expensive then to just pull Isolate at
that one place (it's RegExpMacroAssemblerIA32::CheckStackGuardState etc).

This makes Sunspider's longest test we regressed with Isolates
(string_unpack_code) a bit faster (~1.5%)

Also, NativeRegExpMacroAssembler::Execute(...) became a bit larger and compilers don't inline it anymore. I moved it into static inline helper and it is inlined
again.


Description:
Remove pushing Isolate pointer through callstack for RegExps.
Inline NativeRegExpMacroAssembler::Execute(..) back.
This improves SunSpider's 'unpack_code' by ~3%


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

SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge

Affected files:
  M src/arm/code-stubs-arm.cc
  M src/arm/regexp-macro-assembler-arm.h
  M src/arm/regexp-macro-assembler-arm.cc
  M src/arm/simulator-arm.h
  M src/ia32/code-stubs-ia32.cc
  M src/ia32/regexp-macro-assembler-ia32.h
  M src/ia32/regexp-macro-assembler-ia32.cc
  M src/ia32/simulator-ia32.h
  M src/jsregexp.cc
  M src/regexp-macro-assembler.h
  M src/regexp-macro-assembler.cc
  M src/x64/code-stubs-x64.cc
  M src/x64/regexp-macro-assembler-x64.h
  M src/x64/regexp-macro-assembler-x64.cc
  M src/x64/simulator-x64.h
  M test/cctest/test-regexp.cc


--
v8-dev mailing list
v8-dev@googlegroups.com
http://groups.google.com/group/v8-dev

Reply via email to