diff options
| author | The Android Open Source Project <initial-contribution@android.com> | 2009-02-13 12:57:50 -0800 |
|---|---|---|
| committer | The Android Open Source Project <initial-contribution@android.com> | 2009-02-13 12:57:50 -0800 |
| commit | c9c497faa69a20ac6ff0360281f8896e373a79f9 (patch) | |
| tree | f1c5e97e13324b6854b486a0703044f3849b9e47 /JavaScriptCore | |
| parent | 498e5e4ad10920a9cfae6fdb7ffb19a6ed936ba7 (diff) | |
| download | external_webkit-c9c497faa69a20ac6ff0360281f8896e373a79f9.zip external_webkit-c9c497faa69a20ac6ff0360281f8896e373a79f9.tar.gz external_webkit-c9c497faa69a20ac6ff0360281f8896e373a79f9.tar.bz2 | |
auto import from //branches/cupcake/...@131421
Diffstat (limited to 'JavaScriptCore')
| -rw-r--r-- | JavaScriptCore/VM/CodeGenerator.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/JavaScriptCore/VM/CodeGenerator.cpp b/JavaScriptCore/VM/CodeGenerator.cpp index b255115..2cbf59f 100644 --- a/JavaScriptCore/VM/CodeGenerator.cpp +++ b/JavaScriptCore/VM/CodeGenerator.cpp @@ -783,7 +783,12 @@ RegisterID* CodeGenerator::emitEqualityOp(OpcodeID opcode, RegisterID* dst, Regi if (src1->index() == dstIndex && src1->isTemporary() - && static_cast<unsigned>(src2->index()) < m_codeBlock->constantRegisters.size() + // FIXME: replace the following line by + // && m_codeBlock->isConstant(src2->index()) + // after next merge: + // see http://trac.webkit.org/changeset/38229 + // and http://trac.webkit.org/changeset/38230 + && (src2->index() >= m_codeBlock->numVars && src2->index() < m_codeBlock->numVars + m_codeBlock->numConstants) && m_codeBlock->constantRegisters[src2->index() - m_codeBlock->numVars].jsValue(m_scopeChain->globalObject()->globalExec())->isString()) { const UString& value = asString(m_codeBlock->constantRegisters[src2->index() - m_codeBlock->numVars].jsValue(m_scopeChain->globalObject()->globalExec()))->value(); if (value == "undefined") { |
