v8/test/cctest
kaznacheev@chromium.org cfbc1eed9c Prevent modification of cached normalized maps.
Finally sovles the problem that r5342 attempted to solve.
When adding a stub to a map's code cache we need to make
sure that this map is not used by object that do not need
this stub.

Existing solution had 2 flaws:
1. It checked that the map is cached by asking the current context.
If the object escaped into another context then NormalizedMapCache::Contains
returns false negative.

2. If a map gets evicted from the cache we should not try to modify it
even though Contains returns false.

This patch implements much less fragile solution of the same problem:
A map now has a flag (is_shared) that is set once the map is added
to a cache, stays set even after the cache eviction, and is cleared
if the object goes back to fast mode.

Added a regression test.

Review URL: http://codereview.chromium.org/3472006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5518 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-09-24 08:18:33 +00:00
..
cctest.cc Reverting 3174. Aka reapplying 3150, 3151 and 3159. Aka api accessor 2009-11-04 08:51:48 +00:00
cctest.h Reverting 3174. Aka reapplying 3150, 3151 and 3159. Aka api accessor 2009-11-04 08:51:48 +00:00
cctest.status Cleanup the way the debugger stores live registers when entering at a break 2010-08-27 07:08:03 +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
SConscript Added precision mode to fast-dtoa. 2010-09-20 09:18:00 +00:00
test-accessors.cc Fixed problem where popping a handle scope after calling an accessor 2009-11-06 11:35:47 +00:00
test-alloc.cc Fix compilation error in r3352 2009-11-24 15:16:02 +00:00
test-api.cc Prevent modification of cached normalized maps. 2010-09-24 08:18:33 +00:00
test-assembler-arm.cc Fix the ambigous Operand(0) for newer C++ compilers. 2010-09-07 11:09:45 +00:00
test-assembler-ia32.cc Move serialized scope info from Code object to SharedFunctionInfo. 2010-07-13 13:06:33 +00:00
test-assembler-mips.cc Fix the ambigous Operand(0) for newer C++ compilers. 2010-09-07 11:09:45 +00:00
test-assembler-x64.cc Fix warnings on Win64. 2009-11-11 09:50:06 +00:00
test-ast.cc Add and use AsciiAlphaToLower. Move RemoveLast test. Add Clear test. This is a commit of http://codereview.chromium.org/3307003/show http://codereview.chromium.org/3312007/show and http://codereview.chromium.org/3341002/show for tfarina 2010-09-03 12:59:52 +00:00
test-circular-queue.cc CPU profiler: make code events handling scalable. 2010-05-22 05:27:19 +00:00
test-compiler.cc - Remove function boilerplate objects and use SharedFunctionInfos in 2010-03-23 06:04:44 +00:00
test-conversions.cc StringToDouble rewritten not using String::Get and memory allocations. 2010-03-25 14:39:39 +00:00
test-cpu-profiler.cc Fix CPU profiler crash in start / stop sequence when non-existent name is passed 2010-08-10 12:06:42 +00:00
test-dataflow.cc Fix BitVector test failure. 2010-03-10 08:31:25 +00:00
test-debug.cc Move stack check below while statement. 2010-09-07 15:34:16 +00:00
test-decls.cc Remove old named property query API. 2010-06-15 17:01:02 +00:00
test-disasm-arm.cc Fix incorrect encoding of single and double precision registers for some VFP instructions. Also fix incorrect disassembling of vldr/vstr. This is a commit of http://codereview.chromium.org/3107027 for Rodolph Perfetta. 2010-08-26 08:53:00 +00:00
test-disasm-ia32.cc Support dec_b instruction in ia32 and x64 disassembler. 2010-09-23 19:01:56 +00:00
test-diy-fp.cc Rename files containing underscores. 2010-03-19 12:15:24 +00:00
test-double.cc Rename files containing underscores. 2010-03-19 12:15:24 +00:00
test-fast-dtoa.cc Added precision mode to fast-dtoa. 2010-09-20 09:18:00 +00:00
test-fixed-dtoa.cc Dtoa for fixed notation. 2010-05-05 13:51:27 +00:00
test-flags.cc Fix warnings on Win64. 2009-11-11 09:50:06 +00:00
test-func-name-inference.cc API: Resolve linker issues with using V8 as a DLL 2010-06-18 10:52:59 +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 Add support for abortion in v8::OutputStream. 2010-09-14 15:11:24 +00:00
test-heap.cc Get gcc to check that we don't ignore return values of functions that can 2010-08-31 08:05:42 +00:00
test-list.cc Add and use AsciiAlphaToLower. Move RemoveLast test. Add Clear test. This is a commit of http://codereview.chromium.org/3307003/show http://codereview.chromium.org/3312007/show and http://codereview.chromium.org/3341002/show for tfarina 2010-09-03 12:59:52 +00:00
test-liveedit.cc API: Resolve linker issues with using V8 as a DLL 2010-06-18 10:52:59 +00:00
test-lock.cc Added a wait with timeout to the platform semaphore class. 2009-03-18 09:04:24 +00:00
test-log-stack-tracer.cc Fix a build for Win64 with VS2008. 2010-09-22 13:57:00 +00:00
test-log-utils.cc Fix warnings on Win64. 2009-11-11 09:50:06 +00:00
test-log.cc C++ profiles processor: wire up to VM. 2010-04-06 10:36:38 +00:00
test-macro-assembler-x64.cc X64: Added register holding Smi::FromInt(1). 2010-07-02 14:09:35 +00:00
test-mark-compact.cc Add a check that weak object handle is not in NEAR_DEATH state after weak callback invocation. 2010-07-19 13:26:25 +00:00
test-mips.cc MIPS simple function calls 2010-03-23 15:04:45 +00:00
test-parsing.cc Fix Win64 build with VS2008. 2010-09-22 13:24:14 +00:00
test-platform-linux.cc Changed copyright header from google inc. to v8 project authors. 2008-09-09 20:08:45 +00:00
test-platform-macos.cc Changed copyright header from google inc. to v8 project authors. 2008-09-09 20:08:45 +00:00
test-platform-nullos.cc Changed copyright header from google inc. to v8 project authors. 2008-09-09 20:08:45 +00:00
test-platform-win32.cc Changed copyright header from google inc. to v8 project authors. 2008-09-09 20:08:45 +00:00
test-profile-generator.cc Fix ProfileNodeFindOrAddChildForSameFunction test on Win32 debug. 2010-09-20 12:25:45 +00:00
test-regexp.cc Updated unicode library. 2010-07-30 07:10:22 +00:00
test-serialize.cc Cleanup the way the debugger stores live registers when entering at a break 2010-08-27 07:08:03 +00:00
test-sockets.cc Fixed some cctest flakiness on mac. 2009-09-25 10:36:00 +00:00
test-spaces.cc Cardmarking writebarrier. 2010-05-27 12:30:45 +00:00
test-strings.cc Fix bug in test case that made it fail to compile in non-debug mode. 2010-06-02 11:05:06 +00:00
test-thread-termination.cc Include check for execution termination into bailout check. 2010-05-21 20:52:19 +00:00
test-threads.cc Clean JS function results cache on each major GC. 2010-05-04 16:42:11 +00:00
test-type-info.cc Type info: fix three bit representation of smi type. 2010-06-29 13:48:20 +00:00
test-unbound-queue.cc CPU profiler: make code events handling scalable. 2010-05-22 05:27:19 +00:00
test-utils.cc Created collector class and used it to collect identifiers during scanning. 2010-08-24 10:53:44 +00:00
test-version.cc Split nested namespaces declaration in two lines in accordance with C++ Style Guide. 2009-05-25 10:05:56 +00:00
testcfg.py Refactor the tools/test.py script and related testcfg.py files. 2010-08-24 13:34:59 +00:00