Index: src/interpreter/bytecode-generator.cc |
diff --git a/src/interpreter/bytecode-generator.cc b/src/interpreter/bytecode-generator.cc |
index 089b751c029b4372d0ef7410ed93b8e3b55cf290..fc7b1155d940a74fc780385df4b13bd0b896969c 100644 |
--- a/src/interpreter/bytecode-generator.cc |
+++ b/src/interpreter/bytecode-generator.cc |
@@ -1300,7 +1300,7 @@ void BytecodeGenerator::VisitTryCatchStatement(TryCatchStatement* stmt) { |
// If requested, clear message object as we enter the catch block. |
if (stmt->clear_pending_message()) { |
- builder()->CallRuntime(Runtime::kInterpreterClearPendingMessage); |
+ builder()->LoadTheHole().SetPendingMessage(); |
} |
// Load the catch context into the accumulator. |
@@ -1359,16 +1359,15 @@ void BytecodeGenerator::VisitTryFinallyStatement(TryFinallyStatement* stmt) { |
Register message = context; // Reuse register. |
// Clear message object as we enter the finally block. |
- builder() |
- ->CallRuntime(Runtime::kInterpreterClearPendingMessage) |
- .StoreAccumulatorInRegister(message); |
+ builder()->LoadTheHole().SetPendingMessage().StoreAccumulatorInRegister( |
+ message); |
// Evaluate the finally-block. |
Visit(stmt->finally_block()); |
try_control_builder.EndFinally(); |
// Pending message object is restored on exit. |
- builder()->CallRuntime(Runtime::kInterpreterSetPendingMessage, message); |
+ builder()->LoadAccumulatorWithRegister(message).SetPendingMessage(); |
// Dynamic dispatch after the finally-block. |
commands.ApplyDeferredCommands(); |