v8/test/cctest
loislo@chromium.org f6b7ec4da0 HeapProfiler: very slow ~4min "take snapshot time" for 80MB gmail heap.
The reason of that is a number of cons strings in the app.
The app constructs a json string and as a result v8 heap has
a very long chain of cons strings.

Profiler counts all these strings as plain String objects and
assign the content of the strings as node names.

It required O(n^2) time and O(n^2) memory.

Solution: I introduced two new types, kConsString and kSliced string.
They do not use the content of the string for names. So the problem disappeared.

The heap profiler usability problem will be solved on Blink side.

BUG=285770
R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/23460027

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16611 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-10 11:12:35 +00:00
..
cctest.cc Promote ArrayBuffer, DataView and typed arrays to non-experimental. 2013-08-20 13:55:52 +00:00
cctest.gyp Cleanup Socket class and remove it from the platform files. 2013-09-04 10:41:51 +00:00
cctest.h add isolate parameter for Execution::Call 2013-09-05 08:48:34 +00:00
cctest.status Disable recently added failing InitializeAndDisposeOnce test. 2013-09-06 13:52:59 +00:00
gay-fixed.cc Dtoa for fixed notation. 2010-05-05 13:51:27 +00:00
gay-fixed.h Dtoa for fixed notation. 2010-05-05 13:51:27 +00:00
gay-precision.cc Added precision mode to fast-dtoa. 2010-09-20 09:18:00 +00:00
gay-precision.h Added precision mode to fast-dtoa. 2010-09-20 09:18:00 +00:00
gay-shortest.cc Dtoa for fixed notation. 2010-05-05 13:51:27 +00:00
gay-shortest.h Dtoa for fixed notation. 2010-05-05 13:51:27 +00:00
log-eq-of-logging-and-traversal.js Fix test-log/EquivalenceOfLoggingAndTraversal 2013-08-26 14:56:23 +00:00
test-accessors.cc put js accessor ics behind a flags until fixed 2013-09-09 15:03:03 +00:00
test-alloc.cc Drop OS::IsOutsideAllocatedSpace() and move the tracking to the MemoryAllocator. 2013-09-05 08:17:57 +00:00
test-api.cc restore persistent dtor 2013-09-10 09:24:53 +00:00
test-assembler-arm.cc Fix a crash when generating forward jumps to labels at very high assembly offsets 2013-08-01 08:13:08 +00:00
test-assembler-ia32.cc Revert new OS and CC detection and related changes since r15923. 2013-07-29 12:12:39 +00:00
test-assembler-mips.cc MIPS: Fix cctest/test-assembler-mips on MIPS32R1 architecture. 2013-06-19 17:15:21 +00:00
test-assembler-x64.cc Revert new OS and CC detection and related changes since r15923. 2013-07-29 12:12:39 +00:00
test-ast.cc Get rid of ZoneScope completely. 2013-06-26 13:36:16 +00:00
test-bignum-dtoa.cc Fix X64 compilation on Windows. 2011-02-03 11:13:04 +00:00
test-bignum.cc Bignum implementation of Strtod. 2010-11-08 11:49:47 +00:00
test-circular-queue.cc Rename some of SamplingCircularQueue methods 2013-09-05 10:31:18 +00:00
test-code-stubs-arm.cc ARM: fix cctest/test-code-stub-arm.cc 2013-09-05 07:31:47 +00:00
test-code-stubs-ia32.cc Fix bug in test-code-stubs-x64 which meant not all registers were being checked. 2013-08-16 11:29:54 +00:00
test-code-stubs-x64.cc Fix bug in test-code-stubs-x64 which meant not all registers were being checked. 2013-08-16 11:29:54 +00:00
test-code-stubs.cc Fix NaCl build after r16322. 2013-08-26 13:37:01 +00:00
test-code-stubs.h Arm support for DoubleToIStub (truncating). 2013-08-26 12:24:03 +00:00
test-compiler.cc add isolate parameter for Execution::Call 2013-09-05 08:48:34 +00:00
test-condition-variable.cc Improve cctest/test-condition-variable. 2013-09-03 11:27:02 +00:00
test-conversions.cc Add support for explicit octal and binary integer literals 2013-07-19 09:57:35 +00:00
test-cpu-ia32.cc Fix the CPU feature detection. 2013-08-26 09:37:39 +00:00
test-cpu-profiler.cc Reland^2 "Add Chromium-style TimeDelta, Time and TimeTicks classes, and a new ElapsedTimer class." 2013-08-29 09:15:13 +00:00
test-cpu-x64.cc Fix the CPU feature detection. 2013-08-26 09:37:39 +00:00
test-cpu.cc Replace OS::NumberOfCores() with CPU::NumberOfProcessorsOnline(). 2013-08-28 12:32:56 +00:00
test-dataflow.cc Get rid of ZoneScope completely. 2013-06-26 13:36:16 +00:00
test-date.cc Keep two empty lines between declarations for cpp files 2013-07-05 09:52:11 +00:00
test-debug.cc Debug: parameterize 'step over' action with a frame where the step must be performed 2013-09-08 19:05:29 +00:00
test-declarative-accessors.cc Push SetAccessor to Template 2013-09-04 07:45:36 +00:00
test-decls.cc Deprecate Persistent functions which were marked to be deprecated. 2013-09-03 07:34:34 +00:00
test-deoptimization.cc Move global V8::UseCrankshaft() into the Isolate. 2013-09-03 08:49:44 +00:00
test-dictionary.cc Handlify JSObject::SetIdentityHash method. 2013-08-30 13:42:16 +00:00
test-disasm-arm.cc ARM: Make double registers low/high safe 2013-07-25 15:04:38 +00:00
test-disasm-ia32.cc Fix the CPU feature detection. 2013-08-26 09:37:39 +00:00
test-disasm-mips.cc Unify the way cctest initalizes the VM for each test case. 2013-04-10 08:29:39 +00:00
test-disasm-x64.cc Drop unused rdtsc instruction. 2013-08-22 11:58:20 +00:00
test-diy-fp.cc Add missing license headers. 2013-03-07 11:12:26 +00:00
test-double.cc Keep two empty lines between declarations for cpp files 2013-07-05 09:52:11 +00:00
test-dtoa.cc Fix compilation on 64-bit Windows, update Visual Studio projects. 2011-02-03 13:29:10 +00:00
test-fast-dtoa.cc Add missing license headers. 2013-03-07 11:12:26 +00:00
test-fixed-dtoa.cc Dtoa for fixed notation. 2010-05-05 13:51:27 +00:00
test-flags.cc Ensure removing processed command line arguments. 2012-06-13 15:02:05 +00:00
test-func-name-inference.cc Deprecate FACTORY helper macro. 2013-06-04 10:30:05 +00:00
test-global-handles.cc invert Eternal::IsEmpty logic 2013-09-04 08:19:14 +00:00
test-global-object.cc remove most uses of raw handle constructors 2013-06-13 09:27:09 +00:00
test-hashing.cc Clean up the usage of V8_TARGET_ARCH_${arch} and V8_HOST_ARCH_${arch} 2013-06-28 15:34:48 +00:00
test-hashmap.cc Make the hash map test run faster by doing less work. 2009-05-15 13:49:00 +00:00
test-heap-profiler.cc HeapProfiler: very slow ~4min "take snapshot time" for 80MB gmail heap. 2013-09-10 11:12:35 +00:00
test-heap.cc Remove HandleScope default ctor. 2013-09-10 06:43:23 +00:00
test-list.cc revert thread isolate in PreallocatedStorageAllocationPolicy 2013-09-02 11:39:23 +00:00
test-liveedit.cc Get rid of ZoneScope completely. 2013-06-26 13:36:16 +00:00
test-lockers.cc Cleanup Semaphore class. 2013-09-02 12:26:06 +00:00
test-log-stack-tracer.cc Support idle time in CPU profiler 2013-08-07 17:04:27 +00:00
test-log.cc Remove obsolete global V8::IsRunning() predicate. 2013-09-02 17:06:08 +00:00
test-macro-assembler-x64.cc Keep two empty lines between declarations for cpp files 2013-07-05 09:52:11 +00:00
test-mark-compact.cc Remove HandleScope default ctor. 2013-09-10 06:43:23 +00:00
test-mutex.cc Cleanup Mutex and related classes. 2013-08-29 09:58:30 +00:00
test-object-observe.cc Revert "This patch implements optimized objectInfo structure which manages the set of observers associated with an object and the changeRecord types which they accept." 2013-09-04 20:43:21 +00:00
test-parsing.cc add isolate parameter for Execution::Call 2013-09-05 08:48:34 +00:00
test-platform-linux.cc Import ConditionVariable class. 2013-09-03 07:30:01 +00:00
test-platform-macos.cc Add missing license headers. 2013-03-07 11:12:26 +00:00
test-platform-tls.cc Keep two empty lines between declarations for cpp files 2013-07-05 09:52:11 +00:00
test-platform-win32.cc Make gyp work with MingW32 2013-04-15 08:33:31 +00:00
test-platform.cc Replace OS::NumberOfCores() with CPU::NumberOfProcessorsOnline(). 2013-08-28 12:32:56 +00:00
test-profile-generator.cc Functions may not be optimized and we would like to know in cpu profiler what was the reason. 2013-09-05 13:20:51 +00:00
test-random.cc add isolate parameter for Execution::Call 2013-09-05 08:48:34 +00:00
test-regexp.cc Keep two empty lines between declarations for cpp files 2013-07-05 09:52:11 +00:00
test-reloc-info.cc Merge experimental/gc branch to the bleeding_edge. 2011-09-19 18:36:47 +00:00
test-semaphore.cc Fix Mac llvm-gcc42 build after commit r16473. 2013-09-02 12:36:08 +00:00
test-serialize.cc build fix for 16507 2013-09-03 12:33:52 +00:00
test-socket.cc Cleanup Socket class and remove it from the platform files. 2013-09-04 10:41:51 +00:00
test-spaces.cc Use MemoryChunk-based allocation for deoptimization entry code 2013-01-29 09:09:55 +00:00
test-strings.cc Correctly stringify mixed encoding indirect strings. 2013-09-09 16:15:40 +00:00
test-strtod.cc Add missing license headers. 2013-03-07 11:12:26 +00:00
test-symbols.cc remove most V8_ALLOW_ACCESS_TO_* defines from test classes 2013-05-28 11:54:52 +00:00
test-thread-termination.cc Remove HandleScope default ctor. 2013-09-10 06:43:23 +00:00
test-threads.cc Cleanup Semaphore class. 2013-09-02 12:26:06 +00:00
test-time.cc Cleanup Semaphore class. 2013-09-02 12:26:06 +00:00
test-types.cc Keep two empty lines between declarations for cpp files 2013-07-05 09:52:11 +00:00
test-unbound-queue.cc Add missing license headers. 2013-03-07 11:12:26 +00:00
test-utils.cc Replace OS::MemCopy with OS::MemMove (just as fast but more flexible). 2013-04-16 12:30:51 +00:00
test-version.cc Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
test-weakmaps.cc Deprecate Persistent functions which were marked to be deprecated. 2013-09-03 07:34:34 +00:00
test-weaksets.cc Deprecate Persistent functions which were marked to be deprecated. 2013-09-03 07:34:34 +00:00
test-weaktypedarrays.cc API for DataView. 2013-06-24 11:23:50 +00:00
testcfg.py Remove SCons related files 2013-04-18 11:01:14 +00:00