DFG LogicalNot/Branch peephole removal and inversion ignores the possibility of things exiting
https://bugs.webkit.org/show_bug.cgi?id=109489

Source/JavaScriptCore: 

Reviewed by Mark Hahnenberg.
        
If things can exit between the LogicalNot and the Branch then don't peephole.

* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):

LayoutTests: 

Reviewed by Mark Hahnenberg.

* fast/js/dfg-branch-logical-not-peephole-around-osr-exit-expected.txt: Added.
* fast/js/dfg-branch-logical-not-peephole-around-osr-exit.html: Added.
* fast/js/jsc-test-list:
* fast/js/script-tests/dfg-branch-logical-not-peephole-around-osr-exit.js: Added.
(foo):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142779 268f45cc-cd09-0410-ab3c-d52691b4dbfc