RESOLVED FIXED Bug 141624
DFG::PutStackSinkingPhase should eliminate GetStacks that have an obviously known source, and emit GetStacks when the stack's value is needed and none is deferred
https://bugs.webkit.org/show_bug.cgi?id=141624
Summary DFG::PutStackSinkingPhase should eliminate GetStacks that have an obviously k...
Filip Pizlo
Reported 2015-02-15 14:41:02 PST
Currently if we have a PutLocal/GetLocal pair, then we will sink the PutLocal to the GetLocal. Instead, we should eliminate the GetLocal entirely. Probably this doesn't arise too much because we would have done some CSE, but it would be best if we just did the right thing here.
Attachments
the patch (4.57 KB, patch)
2015-03-13 13:01 PDT, Filip Pizlo
oliver: review+
the patch (12.65 KB, patch)
2015-03-15 20:54 PDT, Filip Pizlo
ggaren: review+
Filip Pizlo
Comment 1 2015-03-13 13:01:51 PDT
Created attachment 248599 [details] the patch
Filip Pizlo
Comment 2 2015-03-13 13:18:57 PDT
Simon Fraser (smfr)
Comment 3 2015-03-14 09:01:22 PDT
This is causing a jsc test failure: https://build.webkit.org/builders/Apple%20Mavericks%20Release%20WK2%20%28Perf%29 Running Speedometer/Full.html (144 of 144) error: Speedometer/Full.html 1 0x108f858a3 JSC::DFG::(anonymous namespace)::PutStackSinkingPhase::run() 2 0x108f7c5f4 JSC::DFG::performPutStackSinking(JSC::DFG::Graph&) 3 0x108fd5cf9 JSC::DFG::Plan::compileInThreadImpl(JSC::DFG::LongLivedState&) 4 0x108fd5601 JSC::DFG::Plan::compileInThread(JSC::DFG::LongLivedState&, JSC::DFG::ThreadData*) 5 0x1090601d3 JSC::DFG::Worklist::runThread(JSC::DFG::ThreadData*) 6 0x1093c5bd3 WTF::threadEntryPoint(void*) 7 0x1093c608f WTF::wtfThreadEntryPoint(void*) 8 0x7fff85ad7899 _pthread_body 9 0x7fff85ad772a _pthread_struct_init 10 0x7fff85adbfc9 thread_start
WebKit Commit Bot
Comment 4 2015-03-14 10:43:13 PDT
Re-opened since this is blocked by bug 142695
Filip Pizlo
Comment 5 2015-03-15 18:59:00 PDT
Comment on attachment 248599 [details] the patch This patch was broken, and it revealed some other issues in this phase. I'll have a new patch shortly.
Filip Pizlo
Comment 6 2015-03-15 20:54:19 PDT
Created attachment 248700 [details] the patch
Geoffrey Garen
Comment 7 2015-03-16 10:30:02 PDT
Comment on attachment 248700 [details] the patch r=me
Filip Pizlo
Comment 8 2015-03-16 10:39:54 PDT
Note You need to log in before you can comment on or make changes to this bug.