| Index: src/compiler/x64/instruction-selector-x64.cc
|
| diff --git a/src/compiler/x64/instruction-selector-x64.cc b/src/compiler/x64/instruction-selector-x64.cc
|
| index 26d8960b913f897c458f9de1ba0cad07959786d4..df0f8809a7bb87c2c3c33246959cbea2eb8ec2f8 100644
|
| --- a/src/compiler/x64/instruction-selector-x64.cc
|
| +++ b/src/compiler/x64/instruction-selector-x64.cc
|
| @@ -1047,6 +1047,11 @@ void InstructionSelector::VisitCall(Node* node, BasicBlock* handler) {
|
| // Pass label of exception handler block.
|
| CallDescriptor::Flags flags = descriptor->flags();
|
| if (handler) {
|
| + DCHECK_EQ(IrOpcode::kIfException, handler->front()->opcode());
|
| + IfExceptionHint hint = OpParameter<IfExceptionHint>(handler->front());
|
| + if (hint == IfExceptionHint::kLocallyCaught) {
|
| + flags |= CallDescriptor::kHasLocalCatchHandler;
|
| + }
|
| flags |= CallDescriptor::kHasExceptionHandler;
|
| buffer.instruction_args.push_back(g.Label(handler));
|
| }
|
|
|