Index: src/runtime.cc |
diff --git a/src/runtime.cc b/src/runtime.cc |
index ff45190f7c21bb519b6c71051eb723d9e1c147c3..cdea6e0a0bdcda22fd36dfb96e6f21c9e000fff8 100644 |
--- a/src/runtime.cc |
+++ b/src/runtime.cc |
@@ -3266,6 +3266,12 @@ RUNTIME_FUNCTION(Runtime_ObjectFreeze) { |
HandleScope scope(isolate); |
ASSERT(args.length() == 1); |
CONVERT_ARG_HANDLE_CHECKED(JSObject, object, 0); |
+ |
+ // %ObjectFreeze is a fast path and these cases are handled elsewhere. |
+ RUNTIME_ASSERT(!object->HasSloppyArgumentsElements() && |
+ !object->map()->is_observed() && |
+ !object->IsJSProxy()); |
+ |
Handle<Object> result; |
ASSIGN_RETURN_FAILURE_ON_EXCEPTION(isolate, result, JSObject::Freeze(object)); |
return *result; |