v8/test/unittests/compiler
titzer 45d75bca5c [turbofan] Handle dead diamonds in scheduling and add a test.
The background here is that graphs generated from WASM are not trimmed.
That means there can be some floating control diamonds that are not
reachable from end. An assertion in the scheduler for phis from floating
diamonds checks that the use edge in this situation is the control edge,
but in general, any edge could cause this.

Scheduling still works without this assertion. The longer term fix
is to either trim the graphs (more compile time overhead for WASM)
or improve the scheduler's handling of dead code in the graph. Currently
it does not schedule dead code but the potential use positions of
dead code are used in the computation of the common dominator of uses. We could
recognize dead nodes in PrepareUses() and check in GetBlockForUse()
as per TODO.

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

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

Cr-Commit-Position: refs/heads/master@{#35245}
2016-04-04 17:45:59 +00:00
..
arm [turbofan] ARM: Use SBFX in instruction selector. 2016-02-16 11:29:48 +00:00
arm64 [turbofan] Store nodes use only MachineRepresentation, not MachineType. 2015-12-11 15:34:16 +00:00
ia32 [turbofan] Store nodes use only MachineRepresentation, not MachineType. 2015-12-11 15:34:16 +00:00
mips MIPS: [turbofan] Optimize Float32 to Int32 rep. changes with Float32 round ops. 2015-12-18 16:12:51 +00:00
mips64 MIPS: [turbofan] Optimize Float32 to Int32 rep. changes with Float32 round ops. 2015-12-18 16:12:51 +00:00
ppc Update PPC OWNERS 2015-07-27 21:37:55 +00:00
s390 S390: Initial test changes and files checkin. 2016-03-15 18:09:36 +00:00
x64 [turbofan] Store nodes use only MachineRepresentation, not MachineType. 2015-12-11 15:34:16 +00:00
branch-elimination-unittest.cc [turbofan] Make MachineType a pair of enums. 2015-12-10 09:03:53 +00:00
change-lowering-unittest.cc Revert of [turbofan] Connect ObjectIsNumber to effect and control chains. (patchset #1 id:1 of https://codereview.chromium.org/1709093002/ ) 2016-02-19 10:13:56 +00:00
coalesced-live-ranges-unittest.cc [turbofan] Factored out the test live range builder. 2015-08-31 09:57:48 +00:00
common-operator-reducer-unittest.cc [turbofan] Make MachineType a pair of enums. 2015-12-10 09:03:53 +00:00
common-operator-unittest.cc [turbofan] Make MachineType a pair of enums. 2015-12-10 09:03:53 +00:00
compiler-test-utils.h [turbofan] Drop V8_TURBOFAN_BACKEND and V8_TURBOFAN_TARGET defines. 2015-08-10 07:17:34 +00:00
control-equivalence-unittest.cc [tubofan] Remove .dot output of --trace-turbo 2015-12-11 16:58:31 +00:00
control-flow-optimizer-unittest.cc [turbofan] Make MachineType a pair of enums. 2015-12-10 09:03:53 +00:00
dead-code-elimination-unittest.cc [turbofan] Make MachineType a pair of enums. 2015-12-10 09:03:53 +00:00
diamond-unittest.cc [turbofan] Make MachineType a pair of enums. 2015-12-10 09:03:53 +00:00
escape-analysis-unittest.cc Remove the template magic from types.(h|cc), remove types-inl.h. 2016-02-02 07:26:06 +00:00
graph-reducer-unittest.cc [turbofan] Make Node::set_op safer via wrapper. 2015-09-24 14:46:37 +00:00
graph-reducer-unittest.h [turbofan] Add AdvancedReducer::ReplaceWithValue() method and convert JSInlining to an AdvancedReducer. 2015-05-12 12:41:36 +00:00
graph-trimmer-unittest.cc [turbofan] Proper dead code elimination as regular reducer. 2015-06-19 12:07:26 +00:00
graph-unittest.cc [turbofan] Get rid of type lower bounds. 2015-09-16 11:55:43 +00:00
graph-unittest.h [wasm] New attempt to implement the Int64Lowering of phis. 2016-03-30 08:14:35 +00:00
instruction-selector-unittest.cc [turbofan] Remove the JSContextRelaxation reducer. 2016-02-19 07:55:48 +00:00
instruction-selector-unittest.h [turbofan] Enforce that C calls do not use floating point params. 2016-02-15 13:25:23 +00:00
instruction-sequence-unittest.cc Re-reland: Remove register index/code indirection 2015-10-02 16:55:22 +00:00
instruction-sequence-unittest.h [turbofan] Create ExplicitOperands to specify operands without virtual registers 2015-10-27 13:27:00 +00:00
int64-lowering-unittest.cc [wasm] Int64Lowering of Word64Ror and Word64Rol. 2016-03-31 17:05:43 +00:00
js-builtin-reducer-unittest.cc Add GetProperty/GetElement to JSReceiver and use it where possible 2016-03-08 17:30:42 +00:00
js-create-lowering-unittest.cc [turbofan] Remove the JSContextRelaxation reducer. 2016-02-19 07:55:48 +00:00
js-intrinsic-lowering-unittest.cc [builtins] Migrate Math.clz32 to a TurboFan builtin. 2016-04-01 14:36:32 +00:00
js-operator-unittest.cc Remove strong mode support from binary operations. 2016-02-16 13:55:29 +00:00
js-type-feedback-unittest.cc Remove support for "loads and stores to global vars through property cell shortcuts installed into parent script context" from all compilers. 2015-10-22 09:17:24 +00:00
js-typed-lowering-unittest.cc [strong] Remove all remainders of strong mode 2016-03-10 12:45:42 +00:00
linkage-tail-call-unittest.cc [turbofan] Make MachineType a pair of enums. 2015-12-10 09:03:53 +00:00
live-range-builder.h [turbofan] Make MachineType a pair of enums. 2015-12-10 09:03:53 +00:00
live-range-unittest.cc [turbofan] Make MachineType a pair of enums. 2015-12-10 09:03:53 +00:00
liveness-analyzer-unittest.cc [turbofan] Remove the JSContextRelaxation reducer. 2016-02-19 07:55:48 +00:00
load-elimination-unittest.cc [turbofan] Turn LoadElimination into an AdvancedReducer. 2015-06-05 16:40:58 +00:00
loop-peeling-unittest.cc Expose a lower bound of malloc'd memory via heap statistics 2016-04-01 10:01:56 +00:00
machine-operator-reducer-unittest.cc [turbofan] Store nodes use only MachineRepresentation, not MachineType. 2015-12-11 15:34:16 +00:00
machine-operator-unittest.cc [turbofan] Store nodes use only MachineRepresentation, not MachineType. 2015-12-11 15:34:16 +00:00
move-optimizer-unittest.cc [turbofan] fine grained in-block move optimization 2016-02-04 06:30:34 +00:00
node-cache-unittest.cc [test] Turn compiler/test-node-cache into a unit test. 2015-04-29 14:40:05 +00:00
node-matchers-unittest.cc [presubmit] Enable readability/namespace linter checking. 2015-09-30 13:47:11 +00:00
node-properties-unittest.cc [turbofan] Proper dead code elimination as regular reducer. 2015-06-19 12:07:26 +00:00
node-test-utils.cc [wasm] Int64Lowering of Int64Mul on ia32 and arm. 2016-03-30 10:40:06 +00:00
node-test-utils.h [wasm] Int64Lowering of Int64Mul on ia32 and arm. 2016-03-30 10:40:06 +00:00
node-unittest.cc Fix -Wsign-compare errors in TF tests under GCC 4.9.2 2015-06-15 12:03:45 +00:00
opcodes-unittest.cc [turbofan] Strength reduction for inline comparisons. 2015-02-24 12:26:29 +00:00
register-allocator-unittest.cc Re-reland: Remove register index/code indirection 2015-10-02 16:55:22 +00:00
schedule-unittest.cc Model exceptional edges from call nodes in TurboFan. 2015-02-20 09:55:00 +00:00
scheduler-rpo-unittest.cc Move RPO unittests into their own file. 2016-02-14 11:27:46 +00:00
scheduler-unittest.cc [turbofan] Handle dead diamonds in scheduling and add a test. 2016-04-04 17:45:59 +00:00
select-lowering-unittest.cc [turbofan] Make MachineType a pair of enums. 2015-12-10 09:03:53 +00:00
simplified-operator-reducer-unittest.cc [turbofan] Move SimplifiedOperatorBuilder into JSGraph. 2015-10-16 12:38:52 +00:00
simplified-operator-unittest.cc Revert of [turbofan] Connect ObjectIsNumber to effect and control chains. (patchset #1 id:1 of https://codereview.chromium.org/1709093002/ ) 2016-02-19 10:13:56 +00:00
state-values-utils-unittest.cc [turbofan] Move SimplifiedOperatorBuilder into JSGraph. 2015-10-16 12:38:52 +00:00
tail-call-optimization-unittest.cc [turbofan] Make MachineType a pair of enums. 2015-12-10 09:03:53 +00:00
typer-unittest.cc Remove strong mode support from binary operations. 2016-02-16 13:55:29 +00:00
value-numbering-reducer-unittest.cc [turbofan] Check node input/use consistency for changed operators and new nodes. 2015-09-25 08:43:11 +00:00
zone-pool-unittest.cc Expose a lower bound of malloc'd memory via heap statistics 2016-04-01 10:01:56 +00:00