v8/test/cctest
titzer@chromium.org 90a7f07489 Implement loop variable assignment analysis.
This analysis computes the set of variables that are assigned in each loop. This is useful to avoid creating redundant loop phis when building an SSA graph, which just waste memory and require analysis to get rid of.

This CL implements an AST walk for the analysis and plugs the result into the TurboFan graph builder. I left this analysis under a flag for A/B testing and until sufficient unit tests can be developed.

R=danno@chromium.org, mstarzinger@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#24957}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24957 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-28 17:30:14 +00:00
..
compiler Implement loop variable assignment analysis. 2014-10-28 17:30:14 +00:00
cctest.cc Remove (untested) code for unsupported compilers. 2014-10-20 12:04:22 +00:00
cctest.gyp Implement loop variable assignment analysis. 2014-10-28 17:30:14 +00:00
cctest.h Add support for a target new space size 2014-10-22 06:58:38 +00:00
cctest.status Fix AstGraphBuilder for loops like for(;;). 2014-10-21 14:17:08 +00:00
DEPS Add DEPS files and run checkdeps in presubmit check 2014-06-03 13:39:42 +00:00
gay-fixed.cc Use full include paths everywhere 2014-06-03 08:12:43 +00:00
gay-fixed.h
gay-precision.cc Use full include paths everywhere 2014-06-03 08:12:43 +00:00
gay-precision.h
gay-shortest.cc Use full include paths everywhere 2014-06-03 08:12:43 +00:00
gay-shortest.h
log-eq-of-logging-and-traversal.js Fix test-log/EquivalenceOfLoggingAndTraversal 2013-08-26 14:56:23 +00:00
OWNERS Update cctest OWNERS file for mips committers. 2014-09-18 17:33:24 +00:00
print-extension.cc Use full include paths everywhere 2014-06-03 08:12:43 +00:00
print-extension.h Use full include paths everywhere 2014-06-03 08:12:43 +00:00
profiler-extension.cc Move platform abstraction to base library 2014-06-30 13:25:46 +00:00
profiler-extension.h Use full include paths everywhere 2014-06-03 08:12:43 +00:00
test-accessors.cc Use full include paths everywhere 2014-06-03 08:12:43 +00:00
test-alloc.cc Rename ascii to one-byte where applicable. 2014-09-10 12:38:12 +00:00
test-api.cc Get stack trace for uncaught exceptions/promise rejections from the simple stack when available. 2014-10-28 13:25:14 +00:00
test-assembler-arm64.cc Add FRINTP (round towards positive infinity) instruction. 2014-10-22 11:06:22 +00:00
test-assembler-arm.cc [turbofan] Implement the correct semantics for integer division/modulus. 2014-10-26 12:50:46 +00:00
test-assembler-ia32.cc convert disassembler to use OStream 2014-09-25 08:33:24 +00:00
test-assembler-mips64.cc MIPS64: Fix move operations from coprocessor in simulator. 2014-09-17 16:21:22 +00:00
test-assembler-mips.cc Reland "MIPS: Add support for arch. revision 6 to mips32 port." 2014-08-12 19:04:15 +00:00
test-assembler-x64.cc Land the Fan (disabled) 2014-07-30 13:54:45 +00:00
test-assembler-x87.cc X87: Land the Fan (disabled) 2014-08-01 07:42:06 +00:00
test-ast.cc Assign bailout and type feedback IDs in a post-pass 2014-10-21 12:16:37 +00:00
test-atomicops.cc Move atomic ops and related files to base library 2014-06-05 12:14:47 +00:00
test-bignum-dtoa.cc Move platform abstraction to base library 2014-06-30 13:25:46 +00:00
test-bignum.cc Move platform abstraction to base library 2014-06-30 13:25:46 +00:00
test-checks.cc Replace our homegrown ARRAY_SIZE() with Chrome's arraysize(). 2014-08-26 09:19:24 +00:00
test-circular-queue.cc Fix newly discovered presubmit errors. 2014-08-12 13:33:35 +00:00
test-code-stubs-arm64.cc Move platform abstraction to base library 2014-06-30 13:25:46 +00:00
test-code-stubs-arm.cc Move platform abstraction to base library 2014-06-30 13:25:46 +00:00
test-code-stubs-ia32.cc Move platform abstraction to base library 2014-06-30 13:25:46 +00:00
test-code-stubs-mips64.cc MIPS64: Fix ConvertDToI test. 2014-10-01 16:25:01 +00:00
test-code-stubs-mips.cc Move platform abstraction to base library 2014-06-30 13:25:46 +00:00
test-code-stubs-x64.cc Move platform abstraction to base library 2014-06-30 13:25:46 +00:00
test-code-stubs-x87.cc Move platform abstraction to base library 2014-06-30 13:25:46 +00:00
test-code-stubs.cc Replace our home-grown BitCast with bit_cast from Chrome/Google3. 2014-09-08 09:11:11 +00:00
test-code-stubs.h Introduce x87 port 2014-05-23 16:37:27 +00:00
test-compiler.cc vector-based ICs did not update type feedback counts correctly. 2014-10-20 11:42:56 +00:00
test-constantpool.cc Tests that the GC doesn't mistake non-pointer constant pool entries as pointers. 2014-07-28 10:04:36 +00:00
test-conversions.cc Move platform abstraction to base library 2014-06-30 13:25:46 +00:00
test-cpu-profiler.cc Revert of Extend CPU profiler with mapping ticks to source lines (patchset #3 id:40001 of https://codereview.chromium.org/616963005/) 2014-10-02 11:58:21 +00:00
test-dataflow.cc Reland 24052 - Require V8 to be explicitly initialized before an Isolate is created 2014-09-19 08:01:35 +00:00
test-date.cc Replace our homegrown ARRAY_SIZE() with Chrome's arraysize(). 2014-08-26 09:19:24 +00:00
test-debug.cc Fix race in debugger threads in cctest/test-debug 2014-10-08 08:56:57 +00:00
test-declarative-accessors.cc Fix newly discovered presubmit errors. 2014-08-12 13:33:35 +00:00
test-decls.cc Move a bunch of GC related files to heap/ subdirectory 2014-08-05 08:18:22 +00:00
test-deoptimization.cc Reland 24052 - Require V8 to be explicitly initialized before an Isolate is created 2014-09-19 08:01:35 +00:00
test-dictionary.cc Pacify GCmole. 2014-08-22 11:09:13 +00:00
test-disasm-arm64.cc Add FRINTP (round towards positive infinity) instruction. 2014-10-22 11:06:22 +00:00
test-disasm-arm.cc [arm] Drop SMMLS support. 2014-10-14 07:47:27 +00:00
test-disasm-ia32.cc [turbofan]IA: ChangeFloat32ToFloat64 supports mem operand 2014-10-13 07:42:35 +00:00
test-disasm-mips64.cc MIPS64: Add support for architecture revision 6. 2014-07-29 18:02:26 +00:00
test-disasm-mips.cc Reland "MIPS: Add support for arch. revision 6 to mips32 port." 2014-08-12 19:04:15 +00:00
test-disasm-x64.cc [x64] simply tweak materialization of float/double constants 2014-10-17 04:18:38 +00:00
test-disasm-x87.cc X87: [turbofan] support all shift operands on ia32 2014-10-08 06:13:22 +00:00
test-diy-fp.cc Move platform abstraction to base library 2014-06-30 13:25:46 +00:00
test-double.cc Move platform abstraction to base library 2014-06-30 13:25:46 +00:00
test-dtoa.cc Move platform abstraction to base library 2014-06-30 13:25:46 +00:00
test-fast-dtoa.cc Move platform abstraction to base library 2014-06-30 13:25:46 +00:00
test-feedback-vector.cc Introduce FeedbackNexus for vector-based ics. 2014-10-28 16:05:45 +00:00
test-fixed-dtoa.cc Move platform abstraction to base library 2014-06-30 13:25:46 +00:00
test-flags.cc Use full include paths everywhere 2014-06-03 08:12:43 +00:00
test-func-name-inference.cc Move some Runtime:: functions and remove runtime.h as include when unnecessary. 2014-10-20 12:07:45 +00:00
test-fuzz-arm64.cc Use full include paths everywhere 2014-06-03 08:12:43 +00:00
test-gc-tracer.cc re-land: Track history of events in GCTracer. 2014-07-24 11:16:01 +00:00
test-global-handles.cc Rename ASSERT* to DCHECK*. 2014-08-04 11:34:54 +00:00
test-global-object.cc Use full include paths everywhere 2014-06-03 08:12:43 +00:00
test-hashing.cc Remove dead code for inline string hashing. 2014-09-04 12:15:09 +00:00
test-hashmap.cc Check alpha-sorting of includes during presubmit. 2014-06-20 08:40:11 +00:00
test-heap-profiler.cc Rename Runtime_CompileUnoptimized to Runtime_CompileLazy, because that is what it does. Split Compiler::GetUnoptimizedCode into two variants, one for lazy compilation (which can return optimized code!) and the other that actually returns unoptimized code. 2014-09-17 15:29:42 +00:00
test-heap.cc Revert "Limit the number of transitions allowed per hidden class." Due to crashes in ClearMapTransitions 2014-10-27 11:58:18 +00:00
test-hydrogen-types.cc Use full include paths everywhere 2014-06-03 08:12:43 +00:00
test-javascript-arm64.cc Move platform abstraction to base library 2014-06-30 13:25:46 +00:00
test-js-arm64-variables.cc Move platform abstraction to base library 2014-06-30 13:25:46 +00:00
test-list.cc Use full include paths everywhere 2014-06-03 08:12:43 +00:00
test-liveedit.cc Reland 24052 - Require V8 to be explicitly initialized before an Isolate is created 2014-09-19 08:01:35 +00:00
test-lockers.cc Fix data races and leaks related to v8::Lockers 2014-10-08 08:17:04 +00:00
test-log-stack-tracer.cc Remove (untested) code for unsupported compilers. 2014-10-20 12:04:22 +00:00
test-log.cc Reland 24052 - Require V8 to be explicitly initialized before an Isolate is created 2014-09-19 08:01:35 +00:00
test-macro-assembler-arm.cc Reland 24052 - Require V8 to be explicitly initialized before an Isolate is created 2014-09-19 08:01:35 +00:00
test-macro-assembler-ia32.cc Reland 24052 - Require V8 to be explicitly initialized before an Isolate is created 2014-09-19 08:01:35 +00:00
test-macro-assembler-mips64.cc Add mips64 port. 2014-07-09 11:08:26 +00:00
test-macro-assembler-mips.cc MIPS: Fix cctest/NaNs after r23767 "Replace our home-grown BitCast with bit_cast from Chrome/Google3". 2014-09-08 16:14:21 +00:00
test-macro-assembler-x64.cc Reland 24052 - Require V8 to be explicitly initialized before an Isolate is created 2014-09-19 08:01:35 +00:00
test-macro-assembler-x87.cc Reland 24052 - Require V8 to be explicitly initialized before an Isolate is created 2014-09-19 08:01:35 +00:00
test-mark-compact.cc HeapProfiler: remove obsolete AddImplicitReferences 2014-08-26 13:05:54 +00:00
test-mementos.cc Remove dependency on Vector from platform files 2014-06-13 16:43:27 +00:00
test-microtask-delivery.cc Use full include paths everywhere 2014-06-03 08:12:43 +00:00
test-object-observe.cc Replace our homegrown ARRAY_SIZE() with Chrome's arraysize(). 2014-08-26 09:19:24 +00:00
test-ordered-hash-table.cc Pacify GCmole. 2014-08-22 11:09:13 +00:00
test-parsing.cc Move AST node counting to post-pass 2014-10-28 13:24:18 +00:00
test-platform-linux.cc Refactor unit tests for the base library to use GTest. 2014-08-06 09:35:21 +00:00
test-platform-win32.cc Refactor unit tests for the base library to use GTest. 2014-08-06 09:35:21 +00:00
test-platform.cc Remove v8stdint.h, it doesn't serve a purpose anymore. 2014-10-21 08:25:14 +00:00
test-profile-generator.cc Move anonymous function name beautifying out of v8. 2014-08-05 07:08:39 +00:00
test-random-number-generator.cc Reland 24052 - Require V8 to be explicitly initialized before an Isolate is created 2014-09-19 08:01:35 +00:00
test-regexp.cc Replace OStream with std::ostream. 2014-09-30 10:29:32 +00:00
test-reloc-info.cc Use full include paths everywhere 2014-06-03 08:12:43 +00:00
test-representation.cc Check alpha-sorting of includes during presubmit. 2014-06-20 08:40:11 +00:00
test-sampler-api.cc Initial implementation of GetStackSample sampling profiler API. 2014-09-29 12:59:54 +00:00
test-serialize.cc Add serializer test case to bug fix in r24871. 2014-10-27 16:40:16 +00:00
test-spaces.cc Really disable test when running with optimize for size 2014-10-22 08:15:47 +00:00
test-strings.cc Cleanup ConsStringIteratorOp. 2014-10-23 05:57:01 +00:00
test-strtod.cc Move platform abstraction to base library 2014-06-30 13:25:46 +00:00
test-symbols.cc Land the Fan (disabled) 2014-07-30 13:54:45 +00:00
test-thread-termination.cc Do not expose termination exceptions to the Exception API. 2014-09-01 09:11:44 +00:00
test-threads.cc Fix newly discovered presubmit errors. 2014-08-12 13:33:35 +00:00
test-types.cc [turbofan] Use range types to type and lower arithmetic ops. 2014-10-23 14:40:43 +00:00
test-unbound-queue.cc Check alpha-sorting of includes during presubmit. 2014-06-20 08:40:11 +00:00
test-unique.cc Use full include paths everywhere 2014-06-03 08:12:43 +00:00
test-unscopables-hidden-prototype.cc Enable ES6 unscopables 2014-08-08 11:42:59 +00:00
test-utils-arm64.cc Rename ASSERT* to DCHECK*. 2014-08-04 11:34:54 +00:00
test-utils-arm64.h Rename ASSERT* to DCHECK*. 2014-08-04 11:34:54 +00:00
test-utils.cc Fix ASAN warning. 2014-10-28 08:34:40 +00:00
test-version.cc Use full include paths everywhere 2014-06-03 08:12:43 +00:00
test-weakmaps.cc Remove all encountered weak maps from the list of weak collections when incremental marking is aborted. 2014-08-05 07:29:13 +00:00
test-weaksets.cc Rename ASSERT* to DCHECK*. 2014-08-04 11:34:54 +00:00
test-weaktypedarrays.cc Move a bunch of GC related files to heap/ subdirectory 2014-08-05 08:18:22 +00:00
testcfg.py Fix test serialization path for windows. 2014-03-26 07:40:32 +00:00
trace-extension.cc Tick processor: Print C++ entry points 2014-10-17 15:44:02 +00:00
trace-extension.h Use full include paths everywhere 2014-06-03 08:12:43 +00:00
types-fuzz.h [turbofan] Use range types to type and lower arithmetic ops. 2014-10-23 14:40:43 +00:00