| Index: src/full-codegen/full-codegen.cc
|
| diff --git a/src/full-codegen/full-codegen.cc b/src/full-codegen/full-codegen.cc
|
| index 5aad3fd0603aa70d9bf0326d3937f008858c9bcb..4836f3b4a212ca33e4b83c1762587f4be60706e3 100644
|
| --- a/src/full-codegen/full-codegen.cc
|
| +++ b/src/full-codegen/full-codegen.cc
|
| @@ -671,13 +671,16 @@ void FullCodeGenerator::SetExpressionAsStatementPosition(Expression* expr) {
|
| }
|
| }
|
|
|
| -
|
| -void FullCodeGenerator::SetCallPosition(Expression* expr) {
|
| +void FullCodeGenerator::SetCallPosition(Expression* expr,
|
| + TailCallMode tail_call_mode) {
|
| if (expr->position() == RelocInfo::kNoPosition) return;
|
| RecordPosition(masm_, expr->position());
|
| if (info_->is_debug()) {
|
| + RelocInfo::Mode mode = (tail_call_mode == TailCallMode::kAllow)
|
| + ? RelocInfo::DEBUG_BREAK_SLOT_AT_TAIL_CALL
|
| + : RelocInfo::DEBUG_BREAK_SLOT_AT_CALL;
|
| // Always emit a debug break slot before a call.
|
| - DebugCodegen::GenerateSlot(masm_, RelocInfo::DEBUG_BREAK_SLOT_AT_CALL);
|
| + DebugCodegen::GenerateSlot(masm_, mode);
|
| }
|
| }
|
|
|
|
|