[runtime] Remove useless %_IsUndetectableObject intrinsic.
authorbmeurer <bmeurer@chromium.org>
Wed, 12 Aug 2015 13:44:06 +0000 (06:44 -0700)
committerCommit bot <commit-bot@chromium.org>
Wed, 12 Aug 2015 13:44:16 +0000 (13:44 +0000)
commit88f90680fd7357d1b561594b9e8592fbdc474946
treed2ec38b808f9f1b792a4af8062290291d3220bd3
parentabc12df33c0dd188441acbf1646048111bdaf1be
[runtime] Remove useless %_IsUndetectableObject intrinsic.

Instead of using a sequence

  if (something == null && !IS_UNDETECTABLE(something))) { ... }

which will be true if something is either null or undefined, it is
way simpler and way more efficient to just write

  if (something === null || something === (void 0)) { ... }

instead, which allows the compiler(s) to generate pretty decent code
without any need to resort to type feedback from a CompareNil IC.

R=yangguo@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#30135}
16 files changed:
src/full-codegen/arm/full-codegen-arm.cc
src/full-codegen/arm64/full-codegen-arm64.cc
src/full-codegen/full-codegen.h
src/full-codegen/ia32/full-codegen-ia32.cc
src/full-codegen/mips/full-codegen-mips.cc
src/full-codegen/mips64/full-codegen-mips64.cc
src/full-codegen/ppc/full-codegen-ppc.cc
src/full-codegen/x64/full-codegen-x64.cc
src/full-codegen/x87/full-codegen-x87.cc
src/hydrogen.cc
src/hydrogen.h
src/macros.py
src/messages.js
src/runtime/runtime-object.cc
src/runtime/runtime.h
src/v8natives.js