Ignore:
Timestamp:
Apr 3, 2012, 9:25:56 PM (13 years ago)
Author:
[email protected]
Message:

jsr/sret should be removed
https://bugs.webkit.org/show_bug.cgi?id=82986
<rdar://problem/11017015>

Reviewed by Sam Weinig and Geoff Garen.

Replaces jsr/sret with finally block inlining.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dump):

  • bytecode/Opcode.h:

(JSC):
(JSC::padOpcodeName):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::pushFinallyContext):
(JSC::BytecodeGenerator::emitComplexJumpScopes):
(JSC):

  • bytecompiler/BytecodeGenerator.h:

(FinallyContext):
(BytecodeGenerator):

  • bytecompiler/NodesCodegen.cpp:

(JSC::TryNode::emitBytecode):

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::privateExecute):

  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompile):

  • jit/JIT.h:

(JIT):

  • jit/JITOpcodes.cpp:

(JSC):

  • jit/JITOpcodes32_64.cpp:

(JSC):

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
Location:
trunk/Source/JavaScriptCore/bytecode
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/bytecode/CodeBlock.cpp

    r111264 r113136  
    12471247            int k0 = (++it)->u.operand;
    12481248            dataLog("[%4d] throw_reference_error\t %s\n", location, constantName(exec, k0, getConstant(k0)).data());
    1249             break;
    1250         }
    1251         case op_jsr: {
    1252             int retAddrDst = (++it)->u.operand;
    1253             int offset = (++it)->u.operand;
    1254             dataLog("[%4d] jsr\t\t %s, %d(->%d)\n", location, registerName(exec, retAddrDst).data(), offset, location + offset);
    1255             break;
    1256         }
    1257         case op_sret: {
    1258             int retAddrSrc = (++it)->u.operand;
    1259             dataLog("[%4d] sret\t\t %s\n", location, registerName(exec, retAddrSrc).data());
    12601249            break;
    12611250        }
  • trunk/Source/JavaScriptCore/bytecode/Opcode.h

    r109007 r113136  
    190190        macro(op_throw_reference_error, 2) \
    191191        \
    192         macro(op_jsr, 3) \
    193         macro(op_sret, 2) \
    194         \
    195192        macro(op_debug, 4) \
    196193        macro(op_profile_will_call, 2) \
Note: See TracChangeset for help on using the changeset viewer.