Changeset 148989 in webkit for trunk/Source/JavaScriptCore/jit
- Timestamp:
- Apr 23, 2013, 1:54:34 PM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/jit/JITOpcodes.cpp
r148899 r148989 1280 1280 void JIT::emit_op_loop_hint(Instruction*) 1281 1281 { 1282 // Emit the watchdog timer check:1283 if (m_vm->watchdog.isEnabled())1284 addSlowCase(branchTest8(NonZero, AbsoluteAddress(m_vm->watchdog.timerDidFireAddress())));1285 1286 1282 // Emit the JIT optimization check: 1287 1283 if (canBeOptimized()) 1288 1284 addSlowCase(branchAdd32(PositiveOrZero, TrustedImm32(Options::executionCounterIncrementForLoop()), 1289 1285 AbsoluteAddress(m_codeBlock->addressOfJITExecuteCounter()))); 1286 1287 // Emit the watchdog timer check: 1288 if (m_vm->watchdog.isEnabled()) 1289 addSlowCase(branchTest8(NonZero, AbsoluteAddress(m_vm->watchdog.timerDidFireAddress()))); 1290 1290 } 1291 1291 1292 1292 void JIT::emitSlow_op_loop_hint(Instruction*, Vector<SlowCaseEntry>::iterator& iter) 1293 1293 { 1294 // Emit the slow path of the watchdog timer check:1295 if (m_vm->watchdog.isEnabled()) {1296 linkSlowCase(iter);1297 1298 JITStubCall stubCall(this, cti_handle_watchdog_timer);1299 stubCall.call();1300 1301 #if ENABLE(DFG_JIT)1302 if (canBeOptimized()) {1303 Jump doOptimize = branchAdd32(PositiveOrZero, TrustedImm32(Options::executionCounterIncrementForLoop()),1304 AbsoluteAddress(m_codeBlock->addressOfJITExecuteCounter()));1305 emitJumpSlowToHot(jump(), OPCODE_LENGTH(op_loop_hint));1306 doOptimize.link(this);1307 } else1308 #endif1309 emitJumpSlowToHot(jump(), OPCODE_LENGTH(op_loop_hint));1310 }1311 1312 1294 #if ENABLE(DFG_JIT) 1313 1295 // Emit the slow path for the JIT optimization check: … … 1322 1304 } 1323 1305 #endif 1306 1307 // Emit the slow path of the watchdog timer check: 1308 if (m_vm->watchdog.isEnabled()) { 1309 linkSlowCase(iter); 1310 1311 JITStubCall stubCall(this, cti_handle_watchdog_timer); 1312 stubCall.call(); 1313 1314 emitJumpSlowToHot(jump(), OPCODE_LENGTH(op_loop_hint)); 1315 } 1316 1324 1317 } 1325 1318
Note:
See TracChangeset
for help on using the changeset viewer.