Changeset 192935 in webkit for trunk/Source/JavaScriptCore/jit/JITOpcodes.cpp
- Timestamp:
- Dec 1, 2015, 5:37:19 PM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/jit/JITOpcodes.cpp
r192914 r192935 968 968 } 969 969 970 void JIT::emit NewFuncCommon(Instruction* currentInstruction)970 void JIT::emit_op_new_func(Instruction* currentInstruction) 971 971 { 972 972 Jump lazyJump; … … 979 979 #endif 980 980 FunctionExecutable* funcExec = m_codeBlock->functionDecl(currentInstruction[3].u.operand); 981 982 OpcodeID opcodeID = m_vm->interpreter->getOpcodeID(currentInstruction->u.opcode); 983 if (opcodeID == op_new_func) 984 callOperation(operationNewFunction, dst, regT0, funcExec); 985 else { 986 ASSERT(opcodeID == op_new_generator_func); 987 callOperation(operationNewGeneratorFunction, dst, regT0, funcExec); 988 } 989 } 990 991 void JIT::emit_op_new_func(Instruction* currentInstruction) 992 { 993 emitNewFuncCommon(currentInstruction); 994 } 995 996 void JIT::emit_op_new_generator_func(Instruction* currentInstruction) 997 { 998 emitNewFuncCommon(currentInstruction); 999 } 1000 981 callOperation(operationNewFunction, dst, regT0, funcExec); 982 } 983 984 void JIT::emit_op_new_func_exp(Instruction* currentInstruction) 985 { 986 emitNewFuncExprCommon(currentInstruction); 987 } 988 1001 989 void JIT::emitNewFuncExprCommon(Instruction* currentInstruction) 1002 990 { … … 1031 1019 callOperation(operationNewArrowFunction, dst, regT0, function, regT3, regT2); 1032 1020 #endif 1033 else { 1034 if (opcodeID == op_new_func_exp) 1035 callOperation(operationNewFunction, dst, regT0, function); 1036 else { 1037 ASSERT(opcodeID == op_new_generator_func_exp); 1038 callOperation(operationNewGeneratorFunction, dst, regT0, function); 1039 } 1040 } 1021 else 1022 callOperation(operationNewFunction, dst, regT0, function); 1041 1023 done.link(this); 1042 1024 } 1043 1044 void JIT::emit_op_new_func_exp(Instruction* currentInstruction) 1045 { 1046 emitNewFuncExprCommon(currentInstruction); 1047 } 1048 1049 void JIT::emit_op_new_generator_func_exp(Instruction* currentInstruction) 1050 { 1051 emitNewFuncExprCommon(currentInstruction); 1052 } 1053 1025 1054 1026 void JIT::emit_op_new_arrow_func_exp(Instruction* currentInstruction) 1055 1027 { … … 1463 1435 } 1464 1436 1465 void JIT::emit_op_save(Instruction* currentInstruction)1466 {1467 JITSlowPathCall slowPathCall(this, currentInstruction, slow_path_save);1468 slowPathCall.call();1469 }1470 1471 void JIT::emit_op_resume(Instruction* currentInstruction)1472 {1473 JITSlowPathCall slowPathCall(this, currentInstruction, slow_path_resume);1474 slowPathCall.call();1475 }1476 1477 1437 } // namespace JSC 1478 1438
Note:
See TracChangeset
for help on using the changeset viewer.