v8/test/unittests/interpreter
mythria 9119d16904 [Interpreter] Optimize equality check with null/undefined with a check on the map.
Equality with null/undefined is equivalent to a check on the undetectable bit
on the map of the object. This would be more efficient than performing the entire
comparison operation.

This cl introduces:
1. A new bytecode called TestUndetectable that checks if the object is null/undefined.
2. Updates peeophole optimizer to emit TestUndetectable when a LdaNull/Undefined
precedes equality check.
4. TestUndetectable is transformed to ObjectIsUndetectable operator when building
turbofan graph.

BUG=v8:4280

Review-Url: https://codereview.chromium.org/2547043002
Cr-Commit-Position: refs/heads/master@{#41514}
2016-12-06 11:32:39 +00:00
..
bytecode-array-builder-unittest.cc [Interpreter] Optimize equality check with null/undefined with a check on the map. 2016-12-06 11:32:39 +00:00
bytecode-array-iterator-unittest.cc [ic] Pass name to LoadGlobalIC again. 2016-11-16 18:17:49 +00:00
bytecode-array-random-iterator-unittest.cc [ignition] Rewrite reverse iterator as random iterator 2016-12-05 13:03:43 +00:00
bytecode-array-writer-unittest.cc This CL enables precise source positions for all V8 compilers. It merges compiler::SourcePosition and internal::SourcePosition to a single class used throughout the codebase. The new internal::SourcePosition instances store an id identifying an inlined function in addition to a script offset. 2016-11-14 17:22:32 +00:00
bytecode-dead-code-optimizer-unittest.cc [Interpreter] Optimize the Register Optimizer. 2016-10-24 20:47:53 +00:00
bytecode-decoder-unittest.cc [Interpreter]: Add kRegList operand type for register list operands. 2016-10-05 16:14:32 +00:00
bytecode-peephole-optimizer-unittest.cc [Interpreter] Optimize equality check with null/undefined with a check on the map. 2016-12-06 11:32:39 +00:00
bytecode-pipeline-unittest.cc [ic] Pass name to LoadGlobalIC again. 2016-11-16 18:17:49 +00:00
bytecode-register-allocator-unittest.cc [Interpreter] Replace BytecodeRegisterAllocator with a simple bump pointer. 2016-09-30 09:03:25 +00:00
bytecode-register-optimizer-unittest.cc [ignition] Fix more -Wsign-compare warnings. 2016-11-11 12:13:12 +00:00
bytecode-utils.h [interpreter] Introduce bytecode generation pipeline. 2016-05-12 19:20:04 +00:00
bytecodes-unittest.cc [ignition] Optimize jump checks to range checks 2016-12-05 18:26:26 +00:00
constant-array-builder-unittest.cc Enable -Wsign-compare compiler warnings. 2016-11-14 10:49:15 +00:00
interpreter-assembler-unittest.cc Reland of [refactoring] Split CodeAssemblerState out of CodeAssembler 2016-11-16 11:48:38 +00:00
interpreter-assembler-unittest.h Reland of [refactoring] Split CodeAssemblerState out of CodeAssembler 2016-11-16 11:48:38 +00:00