Show
Ignore:
Timestamp:
08/18/08 11:14:49 (5 months ago)
Author:
odole
Message:

merge with webkit revision 35814

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/JavaScriptCore/VM/CodeGenerator.cpp

    r436 r440  
    463463PassRefPtr<LabelID> CodeGenerator::emitJumpIfTrue(RegisterID* cond, LabelID* target) 
    464464{ 
    465     if (m_lastOpcodeID == op_less) { 
     465    if (m_lastOpcodeID == op_less && !target->isForwardLabel()) { 
    466466        int dstIndex; 
    467467        int src1Index; 
     
    472472        if (cond->index() == dstIndex && cond->isTemporary() && !cond->refCount()) { 
    473473            rewindBinaryOp(); 
    474             emitOpcode(target->isForwardLabel() ? op_jless : op_loop_if_less); 
     474            emitOpcode(op_loop_if_less); 
    475475            instructions().append(src1Index); 
    476476            instructions().append(src2Index); 
     
    658658    instructions().append(dst->index()); 
    659659    instructions().append(addUnexpectedConstant(jsBoolean(b))); 
     660    return dst; 
     661} 
     662 
     663RegisterID* CodeGenerator::emitUnexpectedLoad(RegisterID* dst, double d) 
     664{ 
     665    emitOpcode(op_unexpected_load); 
     666    instructions().append(dst->index()); 
     667    instructions().append(addUnexpectedConstant(jsNumber(globalExec(), d))); 
    660668    return dst; 
    661669}