Index: src/objects.cc |
diff --git a/src/objects.cc b/src/objects.cc |
index 3ea5b19c0743a3b700350233b7e4712b33ccd711..2a50da9302e4950c10aad0058d65453194cf285f 100644 |
--- a/src/objects.cc |
+++ b/src/objects.cc |
@@ -28,6 +28,7 @@ |
#include "src/counters-inl.h" |
#include "src/counters.h" |
#include "src/date.h" |
+#include "src/debug/debug-evaluate.h" |
#include "src/debug/debug.h" |
#include "src/deoptimizer.h" |
#include "src/elements.h" |
@@ -13940,6 +13941,16 @@ String* SharedFunctionInfo::DebugName() { |
return String::cast(n); |
} |
+bool SharedFunctionInfo::HasNoSideEffect() { |
+ if (!computed_has_no_side_effect()) { |
+ DisallowHeapAllocation not_handlified; |
+ Handle<SharedFunctionInfo> info(this); |
+ set_has_no_side_effect(DebugEvaluate::FunctionHasNoSideEffect(info)); |
+ set_computed_has_no_side_effect(true); |
+ } |
+ return has_no_side_effect(); |
+} |
+ |
// The filter is a pattern that matches function names in this way: |
// "*" all; the default |
// "-" all but the top-level function |