| Summary: | Add scope operand to op_push_with_scope, op_push_name_scope and op_pop_scope | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | Michael Saboff <msaboff> | ||||||
| Component: | JavaScriptCore | Assignee: | Michael Saboff <msaboff> | ||||||
| Status: | RESOLVED FIXED | ||||||||
| Severity: | Normal | CC: | buildbot, rniwa | ||||||
| Priority: | P2 | ||||||||
| Version: | 528+ (Nightly build) | ||||||||
| Hardware: | All | ||||||||
| OS: | All | ||||||||
| Bug Depends on: | |||||||||
| Bug Blocks: | 136724, 138254 | ||||||||
| Attachments: |
|
||||||||
|
Description
Michael Saboff
2014-10-31 11:05:42 PDT
Created attachment 240746 [details]
Patch
Comment on attachment 240746 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=240746&action=review > Source/JavaScriptCore/bytecompiler/BytecodeGenerator.cpp:2199 > +void BytecodeGenerator::emitComplexPopScopes(RegisterID* scopeReg, ControlFlowContext* topScope, ControlFlowContext* bottomScope) Let's call this "scope", or, if we need to disambiguate from something else named "scope", then "scopeRegister". > Source/JavaScriptCore/bytecompiler/BytecodeGenerator.cpp:2314 > +void BytecodeGenerator::emitPopScopes(RegisterID* scopeReg, int targetScopeDepth) Ditto. > Source/JavaScriptCore/bytecompiler/BytecodeGenerator.h:543 > + void emitPopScope(RegisterID* scopeReg); This should be "srcDst" to match other functions' naming. > Source/JavaScriptCore/bytecompiler/NodesCodegen.cpp:2253 > + RegisterID scopeDest(JSStack::ScopeChain); Let's make the scope register a data member in the BytecodeGenerator instead of a one-off allocation at the call site. It's not really valid to allocate bytecode registers in this way. Created attachment 240749 [details]
Patch with suggested updates
Comment on attachment 240749 [details]
Patch with suggested updates
r=me
Committed r175426: <http://trac.webkit.org/changeset/175426> |