FTL boolify() UntypedUse is wrong in the masquerades-as-undefined case
authorfpizlo@apple.com <fpizlo@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 16 Jun 2015 19:17:40 +0000 (19:17 +0000)
committerfpizlo@apple.com <fpizlo@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 16 Jun 2015 19:17:40 +0000 (19:17 +0000)
commitafd3877f447696f9424e834d5dac23b9fe4d336d
tree1dedc14f3c3f183adccba6a6891ed3a170b0bec8
parentab851a6b7cbd3e00f79c678d14799fb400efd218
FTL boolify() UntypedUse is wrong in the masquerades-as-undefined case
https://bugs.webkit.org/show_bug.cgi?id=146002

Reviewed by Darin Adler.

* ftl/FTLLowerDFGToLLVM.cpp: Put this in an anonymous namespace. We should have done that all along. It makes it easier to add debug code.
(JSC::FTL::DFG::LowerDFGToLLVM::boolify): Fix the bug.
* tests/stress/logical-not-masquerades.js: Added. This test creates a masquerader so that the watchpoint is invalid. Previously this would fail for the normal object cases.
(foo):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185600 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/ftl/FTLLowerDFGToLLVM.cpp
Source/JavaScriptCore/tests/stress/logical-not-masquerades.js [new file with mode: 0644]