Clarified stack maintainence code
Created attachment 219616 [details] Patch
Comment on attachment 219616 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=219616&action=review Nice. r=me too with unused code removed. > Source/JavaScriptCore/llint/LLIntEntrypoint.cpp:137 > +int stackPointerOffsetFor(CodeBlock* codeBlock) > +{ > + return virtualRegisterForLocal(frameRegisterCountFor(codeBlock) - 1).offset(); > +} > + Is this used anywhere? If not, it’s better to remove it. > Source/JavaScriptCore/llint/LLIntEntrypoint.h:45 > +int stackPointerOffsetFor(CodeBlock*); Ditto ... not used.
I see that DFGOSREntry.cpp and FTLOSREntry.cpp still uses JSStack::grow() with the expectation that it takes a "past the end" pointer, but that is inconsequential considering they should be checking against the C stack limits instead of the JSStack (via grow()). These appear to be part of several stack checking issues which still remains broken in the jsCStack branch. I'll take care of these in https://bugs.webkit.org/show_bug.cgi?id=125928 when I fix the other stack issues I reported there later.
> > Source/JavaScriptCore/llint/LLIntEntrypoint.cpp:137 > > +int stackPointerOffsetFor(CodeBlock* codeBlock) > > +{ > > + return virtualRegisterForLocal(frameRegisterCountFor(codeBlock) - 1).offset(); > > +} > > + > > Is this used anywhere? If not, it’s better to remove it. Oops! Will remove.
<http://trac.webkit.org/changeset/160835>