| Index: src/runtime.cc
|
| diff --git a/src/runtime.cc b/src/runtime.cc
|
| index 6e045608b9c10d19178a4ee1f5308e9e2e214123..3bb09f3e5c8ad0bc4a44661cd3915077619c0c52 100644
|
| --- a/src/runtime.cc
|
| +++ b/src/runtime.cc
|
| @@ -5157,6 +5157,40 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_TransitionElementsKind) {
|
| }
|
|
|
|
|
| +RUNTIME_FUNCTION(MaybeObject*, Runtime_ElementsTransitionAndStoreStrict) {
|
| + SealHandleScope scope(isolate);
|
| + RUNTIME_ASSERT(args.length() == 4);
|
| +
|
| + Handle<Object> value = args.at<Object>(0);
|
| + Handle<Object> key = args.at<Object>(2);
|
| + Handle<Object> object = args.at<Object>(3);
|
| +
|
| + return Runtime::SetObjectProperty(isolate,
|
| + object,
|
| + key,
|
| + value,
|
| + NONE,
|
| + kStrictMode);
|
| +}
|
| +
|
| +
|
| +RUNTIME_FUNCTION(MaybeObject*, Runtime_ElementsTransitionAndStoreNonStrict) {
|
| + SealHandleScope scope(isolate);
|
| + RUNTIME_ASSERT(args.length() == 4);
|
| +
|
| + Handle<Object> value = args.at<Object>(0);
|
| + Handle<Object> key = args.at<Object>(2);
|
| + Handle<Object> object = args.at<Object>(3);
|
| +
|
| + return Runtime::SetObjectProperty(isolate,
|
| + object,
|
| + key,
|
| + value,
|
| + NONE,
|
| + kNonStrictMode);
|
| +}
|
| +
|
| +
|
| RUNTIME_FUNCTION(MaybeObject*, Runtime_TransitionElementsSmiToDouble) {
|
| SealHandleScope shs(isolate);
|
| RUNTIME_ASSERT(args.length() == 1);
|
|
|