Index: src/compiler/common-operator.h |
diff --git a/src/compiler/common-operator.h b/src/compiler/common-operator.h |
index cc23bf1c8fb040ab449c9022924b4b12264ca09c..0ddcc44bc660d5bb848d80d679d8ddfbd1fa03fe 100644 |
--- a/src/compiler/common-operator.h |
+++ b/src/compiler/common-operator.h |
@@ -34,6 +34,14 @@ std::ostream& operator<<(std::ostream&, BranchHint); |
BranchHint BranchHintOf(const Operator* const); |
+// Prediction whether throw-site is surrounded by any local catch-scope. |
+enum class IfExceptionHint { kLocallyUncaught, kLocallyCaught }; |
+ |
+size_t hash_value(IfExceptionHint hint); |
+ |
+std::ostream& operator<<(std::ostream&, IfExceptionHint); |
+ |
+ |
class SelectParameters final { |
public: |
explicit SelectParameters(MachineType type, |
@@ -94,7 +102,7 @@ class CommonOperatorBuilder final : public ZoneObject { |
const Operator* IfTrue(); |
const Operator* IfFalse(); |
const Operator* IfSuccess(); |
- const Operator* IfException(); |
+ const Operator* IfException(IfExceptionHint hint); |
const Operator* Switch(size_t control_output_count); |
const Operator* IfValue(int32_t value); |
const Operator* IfDefault(); |