Reviewers: Michael Starzinger,

Message:
Michael, please take a look.

Hannes and Toon: this CL increases the size of a vanilla isolate from ~722k to
~765k, but does not affect the context size. However, preventing duplicate
shared function info may save some memory when optimizing or debugging.

Description:
Keep a canonical list of nested shared function infos.

Each SharedFunctionInfo keeps a WeakFixedArray of SharedFunctionInfo
objects for nested inner shared functions, recursively.

This way, when compiling a function, we do not create duplicate shared
function info objects when recompiling with either compiler.

This fixes a class of issues in the debugger, where we set break points
on one shared function info, but functions from duplicate shared function
infos are not affected.

LOG=N
BUG=v8:4132

Please review this at https://codereview.chromium.org/1183733006/

Base URL: https://chromium.googlesource.com/v8/v8.git@master

Affected files (+138, -87 lines):
  M src/arm/full-codegen-arm.cc
  M src/arm64/full-codegen-arm64.cc
  M src/ast.h
  M src/ast.cc
  M src/codegen.h
  M src/compiler.h
  M src/compiler.cc
  M src/compiler/ast-graph-builder.cc
  M src/debug.cc
  M src/factory.h
  M src/factory.cc
  M src/full-codegen.cc
  M src/hydrogen.cc
  M src/ia32/full-codegen-ia32.cc
  M src/mips/full-codegen-mips.cc
  M src/mips64/full-codegen-mips64.cc
  M src/objects.h
  M src/objects-inl.h
  M src/objects-printer.cc
  M src/ppc/full-codegen-ppc.cc
  M src/snapshot/serialize.cc
  M src/typing.cc
  M src/x64/full-codegen-x64.cc
  M src/x87/full-codegen-x87.cc


--
--
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/d/optout.

Reply via email to