Changeset 80919 in webkit for trunk/Source/JavaScriptCore/jit/JITCall.cpp
- Timestamp:
- Mar 11, 2011, 7:12:05 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/jit/JITCall.cpp
r79904 r80919 49 49 void JIT::compileOpCallInitializeCallFrame() 50 50 { 51 store32(regT1, Address(callFrameRegister, RegisterFile::ArgumentCount * static_cast<int>(sizeof(Register)))); 52 loadPtr(Address(regT0, OBJECT_OFFSETOF(JSFunction, m_scopeChain)), regT3); // newScopeChain 53 storePtr(regT0, Address(callFrameRegister, RegisterFile::Callee * static_cast<int>(sizeof(Register)))); 54 storePtr(regT3, Address(callFrameRegister, RegisterFile::ScopeChain * static_cast<int>(sizeof(Register)))); 51 // regT0 holds callee, regT1 holds argCount 52 loadPtr(Address(regT0, OBJECT_OFFSETOF(JSFunction, m_scopeChain)), regT3); // scopeChain 53 emitPutIntToCallFrameHeader(regT1, RegisterFile::ArgumentCount); 54 emitPutCellToCallFrameHeader(regT0, RegisterFile::Callee); 55 emitPutCellToCallFrameHeader(regT3, RegisterFile::ScopeChain); 55 56 } 56 57 … … 68 69 69 70 emitGetVirtualRegister(argCountRegister, regT1); 71 emitFastArithImmToInt(regT1); 70 72 emitGetVirtualRegister(callee, regT0); 71 73 addPtr(Imm32(registerOffset), regT1, regT2); … … 200 202 201 203 loadPtr(Address(regT0, OBJECT_OFFSETOF(JSFunction, m_scopeChain)), regT1); // newScopeChain 202 203 store32(Imm32(argCount), Address(callFrameRegister, (registerOffset + RegisterFile::ArgumentCount) * static_cast<int>(sizeof(Register)))); 204 205 store32(Imm32(Int32Tag), intTagFor(registerOffset + RegisterFile::ArgumentCount)); 206 store32(Imm32(argCount), intPayloadFor(registerOffset + RegisterFile::ArgumentCount)); 204 207 storePtr(callFrameRegister, Address(callFrameRegister, (registerOffset + RegisterFile::CallerFrame) * static_cast<int>(sizeof(Register)))); 205 208 storePtr(regT0, Address(callFrameRegister, (registerOffset + RegisterFile::Callee) * static_cast<int>(sizeof(Register))));
Note:
See TracChangeset
for help on using the changeset viewer.