[Webkit-unassigned] [Bug 69690] DFG does not have flow-sensitive intraprocedural control flow analysis

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Oct 10 12:26:20 PDT 2011


https://bugs.webkit.org/show_bug.cgi?id=69690





--- Comment #28 from Geoffrey Garen <ggaren at apple.com>  2011-10-10 12:26:20 PST ---
> I know.  I don't think I want to do this in this patch, but I think I've got a solution for both this and register allocation: have named speculations (so just as we have an enum of node types, have an enum of speculation types), have attributes on nodes that describe what speculatiuons should be performed, have one phase in Propagator that deduces what those speculatins ought to be, and then while we're at it, have node attributes that specify what additional registers the codegen for a node will required.  And viola, we'll be able to do global register allocation and get rid of GenerationInfo entirely.

Not sure if this helps, but another possible option is to add explicit nodes for each speculation. We didn't do this originally because it made the graph not reusable for the non-speculative path, but now there is no non-speculative path.

> > > +    static inline BlockIndex getBytecodeBegin(OwnPtr<BasicBlock>* block)
> > > +    {
> > > +        return (*block)->bytecodeBegin;
> > > +    }

RE this vs binarySearch, perhaps the binarySearch template could be modified to pass T& instead of T* to child functions.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list