v8/test/unittests/compiler
mvstanton 0a36b5cd2c [Turbofan] Make the -0 deopt case more efficient in multiplication.
After multiplying two integers we emit code like:

  if (result == 0) {
    if (OR_OPERATION(rhs, lhs) < 0) {
      DEOPT;
    }
  }

This CL allows us to eliminate the OR and comparison if either rhs or
lhs is a negative number, reducing the code to:

  if (result == 0) DEOPT;

BUG=

Review-Url: https://codereview.chromium.org/2167643002
Cr-Commit-Position: refs/heads/master@{#38016}
2016-07-25 12:15:22 +00:00
..
arm [turbofan] Change Float64Max/Float64Min to JavaScript semantics. 2016-07-22 08:25:11 +00:00
arm64 [turbofan] Change Float64Max/Float64Min to JavaScript semantics. 2016-07-22 08:25:11 +00:00
ia32 [turbofan] Store nodes use only MachineRepresentation, not MachineType. 2015-12-11 15:34:16 +00:00
mips [turbofan] Change Float64Max/Float64Min to JavaScript semantics. 2016-07-22 08:25:11 +00:00
mips64 [turbofan] Change Float64Max/Float64Min to JavaScript semantics. 2016-07-22 08:25:11 +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
checkpoint-elimination-unittest.cc [turbofan] Rename {CheckPoint} to {Checkpoint} everywhere. 2016-06-01 09:07:19 +00:00
common-operator-reducer-unittest.cc [turbofan] Change Float64Max/Float64Min to JavaScript semantics. 2016-07-22 08:25:11 +00:00
common-operator-unittest.cc [turbofan] Address the useless overflow bit materialization. 2016-06-21 15:46:40 +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] Move TryCloneBranch in the EffectControlLinearizer pass. 2016-07-12 15:23:36 +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
effect-control-linearizer-unittest.cc [turbofan] Move TryCloneBranch in the EffectControlLinearizer pass. 2016-07-12 15:23:36 +00:00
escape-analysis-unittest.cc [turbofan] Add support for eager/soft deoptimization reasons. 2016-07-18 09:25:16 +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 [turbofan] Do strength reduction for ObjectIsSmi based on inputs. 2016-06-08 07:13:05 +00:00
instruction-selector-unittest.cc [turbofan] Add support for eager/soft deoptimization reasons. 2016-07-18 09:25:16 +00:00
instruction-selector-unittest.h [turbofan] Add MachineType to LinkageLocation 2016-07-11 10:39:34 +00:00
instruction-sequence-unittest.cc Replace SmartPointer<T> with unique_ptr<T> 2016-07-25 11:14:34 +00:00
instruction-sequence-unittest.h Replace SmartPointer<T> with unique_ptr<T> 2016-07-25 11:14:34 +00:00
int64-lowering-unittest.cc Implement UnaligedLoad and UnaligedStore turbofan operators. 2016-07-22 20:56:24 +00:00
js-builtin-reducer-unittest.cc [turbofan] Change Float64Max/Float64Min to JavaScript semantics. 2016-07-22 08:25:11 +00:00
js-create-lowering-unittest.cc [runtime] Fix number of literals for builtin functions. 2016-05-24 15:12:58 +00:00
js-intrinsic-lowering-unittest.cc [turbofan] Avoid introducing machine operators during typed lowering. 2016-07-25 10:38:00 +00:00
js-operator-unittest.cc Rip out most of our outdated modules implementation. 2016-06-28 07:25:38 +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 [turbofan] Avoid introducing machine operators during typed lowering. 2016-07-25 10:38:00 +00:00
linkage-tail-call-unittest.cc [turbofan] Robustify tail parameter stack size computations 2016-07-12 08:40:49 +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] New GraphReducer based LoadElimination. 2016-07-25 12:05:16 +00:00
loop-peeling-unittest.cc [turbofan] Loop peeling with explicit loop exits. 2016-07-15 10:24:25 +00:00
machine-operator-reducer-unittest.cc [Turbofan] Make the -0 deopt case more efficient in multiplication. 2016-07-25 12:15:22 +00:00
machine-operator-unittest.cc [turbofan] Change Float64Max/Float64Min to JavaScript semantics. 2016-07-22 08:25:11 +00:00
move-optimizer-unittest.cc [RegisterConfiguration] Streamline access to arch defaults, simplify Registers. 2016-06-27 15:31:31 +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 [turbofan] Support subtraction displacements in BaseWithIndexAndDisplacementMatcher 2016-07-13 08:03:38 +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 Implement UnaligedLoad and UnaligedStore turbofan operators. 2016-07-22 20:56:24 +00:00
node-test-utils.h Implement UnaligedLoad and UnaligedStore turbofan operators. 2016-07-22 20:56:24 +00:00
node-unittest.cc [turbofan] Speed up structural graph verification. 2016-07-12 09:31:12 +00:00
opcodes-unittest.cc [turbofan] Strength reduction for inline comparisons. 2015-02-24 12:26:29 +00:00
register-allocator-unittest.cc [turbofan] Retiring Greedy Allocator 2016-06-13 04:24:12 +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 Replace SmartPointer<T> with unique_ptr<T> 2016-07-25 11:14:34 +00:00
scheduler-unittest.cc [turbofan] Handle dead diamonds in scheduling and add a test. 2016-04-04 17:45:59 +00:00
simplified-operator-reducer-unittest.cc [turbofan] Disallow typing for change/checked operators. 2016-06-29 10:32:19 +00:00
simplified-operator-unittest.cc Revert of [turbofan] Introduce TruncateTaggedToBit operator for ToBoolean truncation. (patchset #2 id:20001 of https://codereview.chromium.org/2167593002/ ) 2016-07-20 10:18:46 +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] Add MachineType to LinkageLocation 2016-07-11 10:39:34 +00:00
typer-unittest.cc [turbofan] Type feedback for numeric comparisons. 2016-06-16 06:37:31 +00:00
value-numbering-reducer-unittest.cc [turbofan] Make sure value numbering only narrows types. 2016-07-14 08:10:21 +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