v8/test/unittests/compiler
sigurds 45787501e5 [turbofan] Pseudo-inline 'instanceof'
This patch extends the typed lowering with a specialized version of 'instanceof' that is used if the "class", i.e. the constructor function, is a known constant.

Unittests check that replacement occurs as intended. Functional correctness is ensured by extensive unit tests covering instanceof already in the testsuite.

TESTS=unittests/JSTypedLoweringTest.{JSInstanceOfSpecializationWithSmiCheck,JSInstanceOfSpecializationWithoutSmiCheck,JSInstanceOfNoSpecialization}

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

Cr-Commit-Position: refs/heads/master@{#31916}
2015-11-10 12:20:11 +00:00
..
arm [turbofan] Cleanup RawMachineAssembler::Store interface. 2015-10-29 09:22:25 +00:00
arm64 [turbofan] Use cmn on ARM64 for negated rhs cmp 2015-11-07 07:20:17 +00:00
ia32 [turbofan] Cleanup RawMachineAssembler::Store interface. 2015-10-29 09:22:25 +00:00
mips MIPS: [turbofan] Properly implement Float64/32 Min/Max instructions. 2015-11-04 21:03:25 +00:00
mips64 Implemented the Word64Clz TurboFan operator for x64, arm64, and mips64. 2015-11-06 14:51:20 +00:00
ppc Update PPC OWNERS 2015-07-27 21:37:55 +00:00
x64 [turbofan] Cleanup RawMachineAssembler::Store interface. 2015-10-29 09:22:25 +00:00
binary-operator-reducer-unittest.cc binary-operator-reducer: reduce mul+div(shift) 2015-11-09 20:42:39 +00:00
branch-elimination-unittest.cc [turbofan] Redundant branch elimination. 2015-10-17 17:50:26 +00:00
bytecode-graph-builder-unittest.cc [Interpreter] Add support for local context loads and stores. 2015-10-16 15:29:16 +00:00
change-lowering-unittest.cc [turbofan] Try hard(er) to use smi representation for float64 values. 2015-10-27 16:18:15 +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] Also update the BranchHint when merging a BooleanNot. 2015-06-26 12:08:26 +00:00
common-operator-unittest.cc [turbofan] Introduce node regions for protection from scheduling. 2015-10-14 14:53:12 +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 [turbofan] Check node input/use consistency for changed operators and new nodes. 2015-09-25 08:43:11 +00:00
control-flow-optimizer-unittest.cc [turbofan] Remove the JSGraph dependency from the ControlFlowOptimizer. 2015-05-28 09:13:05 +00:00
dead-code-elimination-unittest.cc [turbofan] Proper dead code elimination as regular reducer. 2015-06-19 12:07:26 +00:00
diamond-unittest.cc [turbofan] Check node input/use consistency for changed operators and new nodes. 2015-09-25 08:43:11 +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] Remove usage of Unique<T> from graph. 2015-08-31 08:25:05 +00:00
instruction-selector-unittest.cc [turbofan] Deprecate RawMachineAssembler::CallFunctionStub0. 2015-11-04 17:17:13 +00:00
instruction-selector-unittest.h [turbofan] Change RawMachineAssembler to take a CallDescriptor instead of a MachineSignature. 2015-07-21 15:54:27 +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
interpreter-assembler-unittest.cc [Interpreter] Add support for JS runtime calls. 2015-11-04 09:21:51 +00:00
interpreter-assembler-unittest.h [Interpreter] Add support for short (16 bit) operands. 2015-10-01 17:23:14 +00:00
js-builtin-reducer-unittest.cc [turbofan] Remove use of CallFunctionStub from TurboFan. 2015-11-04 15:04:53 +00:00
js-context-relaxation-unittest.cc [turbofan] Remove use of CallFunctionStub from TurboFan. 2015-11-04 15:04:53 +00:00
js-intrinsic-lowering-unittest.cc [runtime] Remove the unused weird %Likely and %Unlikely intrinsics. 2015-11-05 13:52:31 +00:00
js-operator-unittest.cc [turbofan] Add support for relevant ES6 type conversion intrinsics. 2015-11-05 09:51:28 +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] Pseudo-inline 'instanceof' 2015-11-10 12:20:11 +00:00
linkage-tail-call-unittest.cc [turbofan]: Add better encapsulation to LinkageLocation 2015-07-30 14:52:30 +00:00
live-range-builder.h [turbofan] Live Range unit tests. 2015-08-31 13:27:12 +00:00
live-range-unittest.cc [Turbofan] Re-enable single splinter. 2015-10-21 08:09:43 +00:00
liveness-analyzer-unittest.cc [turbofan] Move SimplifiedOperatorBuilder into JSGraph. 2015-10-16 12:38:52 +00:00
load-elimination-unittest.cc [turbofan] Turn LoadElimination into an AdvancedReducer. 2015-06-05 16:40:58 +00:00
loop-peeling-unittest.cc [turbofan] Check node input/use consistency for changed operators and new nodes. 2015-09-25 08:43:11 +00:00
machine-operator-reducer-unittest.cc binary-operator-reducer: reduce mul+div(shift) 2015-11-09 20:42:39 +00:00
machine-operator-unittest.cc [turbofan] Limit the load/store machine types to the ones we actually use. 2015-09-15 05:45:30 +00:00
move-optimizer-unittest.cc When we split above an instruction (for example because of splintering), 2015-10-29 16:12:54 +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 binary-operator-reducer: reduce mul+div(shift) 2015-11-09 20:42:39 +00:00
node-test-utils.h binary-operator-reducer: reduce mul+div(shift) 2015-11-09 20:42:39 +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-unittest.cc [turbofan] Fix scheduler test for Loop/Terminate nodes. 2015-10-09 10:52:59 +00:00
select-lowering-unittest.cc Reland "[turbofan] Fix select lowering" with fix. 2014-11-10 11:55:47 +00:00
simplified-operator-reducer-unittest.cc [turbofan] Move SimplifiedOperatorBuilder into JSGraph. 2015-10-16 12:38:52 +00:00
simplified-operator-unittest.cc [turbofan] Introduce simplified NumberBitwise{Or,Xor,And} operators. 2015-10-27 09:08:19 +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 better encapsulation to LinkageLocation 2015-07-30 14:52:30 +00:00
typer-unittest.cc [unittests] Fix build/namespaces style guide violation. 2015-10-26 13:47:16 +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 Fix invalid use of int in Zone. 2015-02-12 12:47:18 +00:00