summaryrefslogtreecommitdiff
path: root/Source/JavaScriptCore/bytecompiler
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@digia.com>2012-10-17 16:21:14 +0200
committerSimon Hausmann <simon.hausmann@digia.com>2012-10-17 16:21:14 +0200
commit8995b83bcbfbb68245f779b64e5517627c6cc6ea (patch)
tree17985605dab9263cc2444bd4d45f189e142cca7c /Source/JavaScriptCore/bytecompiler
parentb9c9652036d5e9f1e29c574f40bc73a35c81ace6 (diff)
downloadqtwebkit-8995b83bcbfbb68245f779b64e5517627c6cc6ea.tar.gz
Imported WebKit commit cf4f8fc6f19b0629f51860cb2d4b25e139d07e00 (http://svn.webkit.org/repository/webkit/trunk@131592)
New snapshot that includes the build fixes for Mac OS X 10.6 and earlier as well as the previously cherry-picked changes
Diffstat (limited to 'Source/JavaScriptCore/bytecompiler')
-rw-r--r--Source/JavaScriptCore/bytecompiler/BytecodeGenerator.cpp34
-rw-r--r--Source/JavaScriptCore/bytecompiler/BytecodeGenerator.h4
-rw-r--r--Source/JavaScriptCore/bytecompiler/NodesCodegen.cpp4
3 files changed, 21 insertions, 21 deletions
diff --git a/Source/JavaScriptCore/bytecompiler/BytecodeGenerator.cpp b/Source/JavaScriptCore/bytecompiler/BytecodeGenerator.cpp
index 9e993ec65..4308148b3 100644
--- a/Source/JavaScriptCore/bytecompiler/BytecodeGenerator.cpp
+++ b/Source/JavaScriptCore/bytecompiler/BytecodeGenerator.cpp
@@ -230,7 +230,7 @@ bool BytecodeGenerator::addVar(const Identifier& ident, bool isConstant, Registe
SymbolTable::AddResult result = symbolTable().add(ident.impl(), newEntry);
if (!result.isNewEntry) {
- r0 = &registerFor(result.iterator->second.getIndex());
+ r0 = &registerFor(result.iterator->value.getIndex());
return false;
}
@@ -248,8 +248,8 @@ int BytecodeGenerator::addGlobalVar(
newEntry.attemptToWatch();
SymbolTable::AddResult result = symbolTable().add(ident.impl(), newEntry);
if (!result.isNewEntry) {
- result.iterator->second.notifyWrite();
- index = result.iterator->second.getIndex();
+ result.iterator->value.notifyWrite();
+ index = result.iterator->value.getIndex();
}
return index;
}
@@ -629,7 +629,7 @@ RegisterID* BytecodeGenerator::resolveCallee(FunctionBodyNode* functionBodyNode)
if (functionBodyNode->ident().isNull() || !functionBodyNode->functionNameIsInScope())
return 0;
- m_calleeRegister.setIndex(RegisterFile::Callee);
+ m_calleeRegister.setIndex(JSStack::Callee);
// If non-strict eval is in play, we use a separate object in the scope chain for the callee's name.
if ((m_codeBlock->usesEval() && !m_codeBlock->isStrictMode()) || m_shouldEmitDebugHooks) {
@@ -1129,7 +1129,7 @@ PassRefPtr<Label> BytecodeGenerator::emitJumpIfNotFunctionCall(RegisterID* cond,
emitOpcode(op_jneq_ptr);
instructions().append(cond->index());
- instructions().append(Instruction(*m_globalData, m_codeBlock->ownerExecutable(), m_scope->globalObject()->callFunction()));
+ instructions().append(Special::CallFunction);
instructions().append(target->bind(begin, instructions().size()));
return target;
}
@@ -1140,7 +1140,7 @@ PassRefPtr<Label> BytecodeGenerator::emitJumpIfNotFunctionApply(RegisterID* cond
emitOpcode(op_jneq_ptr);
instructions().append(cond->index());
- instructions().append(Instruction(*m_globalData, m_codeBlock->ownerExecutable(), m_scope->globalObject()->applyFunction()));
+ instructions().append(Special::ApplyFunction);
instructions().append(target->bind(begin, instructions().size()));
return target;
}
@@ -1152,7 +1152,7 @@ unsigned BytecodeGenerator::addConstant(const Identifier& ident)
if (result.isNewEntry)
m_codeBlock->addIdentifier(Identifier(m_globalData, rep));
- return result.iterator->second;
+ return result.iterator->value;
}
// We can't hash JSValue(), so we use a dedicated data member to cache it.
@@ -1181,7 +1181,7 @@ RegisterID* BytecodeGenerator::addConstantValue(JSValue v)
++m_nextConstantOffset;
m_codeBlock->addConstant(v);
} else
- index = result.iterator->second;
+ index = result.iterator->value;
return &m_constantPoolRegisters[index];
}
@@ -1327,7 +1327,7 @@ RegisterID* BytecodeGenerator::emitLoad(RegisterID* dst, double number)
// work correctly with NaN as a key.
if (isnan(number) || number == HashTraits<double>::emptyValue() || HashTraits<double>::isDeletedValue(number))
return emitLoad(dst, jsNumber(number));
- JSValue& valueInMap = m_numberMap.add(number, JSValue()).iterator->second;
+ JSValue& valueInMap = m_numberMap.add(number, JSValue()).iterator->value;
if (!valueInMap)
valueInMap = jsNumber(number);
return emitLoad(dst, valueInMap);
@@ -1335,7 +1335,7 @@ RegisterID* BytecodeGenerator::emitLoad(RegisterID* dst, double number)
RegisterID* BytecodeGenerator::emitLoad(RegisterID* dst, const Identifier& identifier)
{
- JSString*& stringInMap = m_stringMap.add(identifier.impl(), 0).iterator->second;
+ JSString*& stringInMap = m_stringMap.add(identifier.impl(), 0).iterator->value;
if (!stringInMap)
stringInMap = jsOwnedString(globalData(), identifier.string());
return emitLoad(dst, JSValue(stringInMap));
@@ -1907,7 +1907,7 @@ unsigned BytecodeGenerator::addConstantBuffer(unsigned length)
JSString* BytecodeGenerator::addStringConstant(const Identifier& identifier)
{
- JSString*& stringInMap = m_stringMap.add(identifier.impl(), 0).iterator->second;
+ JSString*& stringInMap = m_stringMap.add(identifier.impl(), 0).iterator->value;
if (!stringInMap) {
stringInMap = jsString(globalData(), identifier.string());
addConstantValue(stringInMap);
@@ -1979,8 +1979,8 @@ RegisterID* BytecodeGenerator::emitLazyNewFunction(RegisterID* dst, FunctionBody
{
FunctionOffsetMap::AddResult ptr = m_functionOffsets.add(function, 0);
if (ptr.isNewEntry)
- ptr.iterator->second = m_codeBlock->addFunctionDecl(FunctionExecutable::create(*m_globalData, function));
- return emitNewFunctionInternal(dst, ptr.iterator->second, true);
+ ptr.iterator->value = m_codeBlock->addFunctionDecl(FunctionExecutable::create(*m_globalData, function));
+ return emitNewFunctionInternal(dst, ptr.iterator->value, true);
}
RegisterID* BytecodeGenerator::emitNewFunctionInternal(RegisterID* dst, unsigned index, bool doNullCheck)
@@ -2065,8 +2065,8 @@ RegisterID* BytecodeGenerator::emitCall(OpcodeID opcodeID, RegisterID* dst, Regi
emitNode(callArguments.argumentRegister(argument++), n);
// Reserve space for call frame.
- Vector<RefPtr<RegisterID>, RegisterFile::CallFrameHeaderSize> callFrame;
- for (int i = 0; i < RegisterFile::CallFrameHeaderSize; ++i)
+ Vector<RefPtr<RegisterID>, JSStack::CallFrameHeaderSize> callFrame;
+ for (int i = 0; i < JSStack::CallFrameHeaderSize; ++i)
callFrame.append(newTemporary());
if (m_shouldEmitProfileHooks) {
@@ -2182,8 +2182,8 @@ RegisterID* BytecodeGenerator::emitConstruct(RegisterID* dst, RegisterID* func,
}
// Reserve space for call frame.
- Vector<RefPtr<RegisterID>, RegisterFile::CallFrameHeaderSize> callFrame;
- for (int i = 0; i < RegisterFile::CallFrameHeaderSize; ++i)
+ Vector<RefPtr<RegisterID>, JSStack::CallFrameHeaderSize> callFrame;
+ for (int i = 0; i < JSStack::CallFrameHeaderSize; ++i)
callFrame.append(newTemporary());
emitExpressionInfo(divot, startOffset, endOffset);
diff --git a/Source/JavaScriptCore/bytecompiler/BytecodeGenerator.h b/Source/JavaScriptCore/bytecompiler/BytecodeGenerator.h
index 1bf1d8f26..a429c710e 100644
--- a/Source/JavaScriptCore/bytecompiler/BytecodeGenerator.h
+++ b/Source/JavaScriptCore/bytecompiler/BytecodeGenerator.h
@@ -629,11 +629,11 @@ namespace JSC {
if (index >= 0)
return m_calleeRegisters[index];
- if (index == RegisterFile::Callee)
+ if (index == JSStack::Callee)
return m_calleeRegister;
ASSERT(m_parameters.size());
- return m_parameters[index + m_parameters.size() + RegisterFile::CallFrameHeaderSize];
+ return m_parameters[index + m_parameters.size() + JSStack::CallFrameHeaderSize];
}
unsigned addConstant(const Identifier&);
diff --git a/Source/JavaScriptCore/bytecompiler/NodesCodegen.cpp b/Source/JavaScriptCore/bytecompiler/NodesCodegen.cpp
index 823dadf14..0ac4149b6 100644
--- a/Source/JavaScriptCore/bytecompiler/NodesCodegen.cpp
+++ b/Source/JavaScriptCore/bytecompiler/NodesCodegen.cpp
@@ -260,7 +260,7 @@ RegisterID* PropertyListNode::emitBytecode(BytecodeGenerator& generator, Registe
GetterSetterPair pair(node, static_cast<PropertyNode*>(0));
GetterSetterMap::AddResult result = map.add(node->name().impl(), pair);
if (!result.isNewEntry)
- result.iterator->second.second = node;
+ result.iterator->value.second = node;
}
// Iterate over the remaining properties in the list.
@@ -278,7 +278,7 @@ RegisterID* PropertyListNode::emitBytecode(BytecodeGenerator& generator, Registe
ASSERT(node->m_type == PropertyNode::Getter || node->m_type == PropertyNode::Setter);
GetterSetterMap::iterator it = map.find(node->name().impl());
ASSERT(it != map.end());
- GetterSetterPair& pair = it->second;
+ GetterSetterPair& pair = it->value;
// Was this already generated as a part of its partner?
if (pair.second == node)