OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include <stdlib.h> | 5 #include <stdlib.h> |
6 #include <limits> | 6 #include <limits> |
7 | 7 |
8 #include "src/v8.h" | 8 #include "src/v8.h" |
9 | 9 |
10 #include "src/accessors.h" | 10 #include "src/accessors.h" |
(...skipping 5074 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5085 !lookup.GetCallbackObject()->IsAccessorInfo())) { | 5085 !lookup.GetCallbackObject()->IsAccessorInfo())) { |
5086 JSObject::NormalizeProperties(js_object, CLEAR_INOBJECT_PROPERTIES, 0); | 5086 JSObject::NormalizeProperties(js_object, CLEAR_INOBJECT_PROPERTIES, 0); |
5087 } | 5087 } |
5088 | 5088 |
5089 // Use IgnoreAttributes version since a readonly property may be | 5089 // Use IgnoreAttributes version since a readonly property may be |
5090 // overridden and SetProperty does not allow this. | 5090 // overridden and SetProperty does not allow this. |
5091 Handle<Object> result; | 5091 Handle<Object> result; |
5092 ASSIGN_RETURN_FAILURE_ON_EXCEPTION( | 5092 ASSIGN_RETURN_FAILURE_ON_EXCEPTION( |
5093 isolate, result, | 5093 isolate, result, |
5094 JSObject::SetOwnPropertyIgnoreAttributes( | 5094 JSObject::SetOwnPropertyIgnoreAttributes( |
5095 js_object, name, obj_value, attr)); | 5095 js_object, name, obj_value, attr, |
| 5096 Object::OPTIMAL_REPRESENTATION, |
| 5097 ALLOW_AS_CONSTANT, |
| 5098 JSReceiver::PERFORM_EXTENSIBILITY_CHECK, |
| 5099 JSReceiver::MAY_BE_STORE_FROM_KEYED, |
| 5100 JSObject::DONT_FORCE_FIELD)); |
5096 return *result; | 5101 return *result; |
5097 } | 5102 } |
5098 | 5103 |
5099 Handle<Object> result; | 5104 Handle<Object> result; |
5100 ASSIGN_RETURN_FAILURE_ON_EXCEPTION( | 5105 ASSIGN_RETURN_FAILURE_ON_EXCEPTION( |
5101 isolate, result, | 5106 isolate, result, |
5102 Runtime::DefineObjectProperty( | 5107 Runtime::DefineObjectProperty( |
5103 js_object, name, obj_value, attr, | 5108 js_object, name, obj_value, attr, |
5104 JSReceiver::CERTAINLY_NOT_STORE_FROM_KEYED)); | 5109 JSReceiver::CERTAINLY_NOT_STORE_FROM_KEYED)); |
5105 return *result; | 5110 return *result; |
(...skipping 9992 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
15098 } | 15103 } |
15099 return NULL; | 15104 return NULL; |
15100 } | 15105 } |
15101 | 15106 |
15102 | 15107 |
15103 const Runtime::Function* Runtime::FunctionForId(Runtime::FunctionId id) { | 15108 const Runtime::Function* Runtime::FunctionForId(Runtime::FunctionId id) { |
15104 return &(kIntrinsicFunctions[static_cast<int>(id)]); | 15109 return &(kIntrinsicFunctions[static_cast<int>(id)]); |
15105 } | 15110 } |
15106 | 15111 |
15107 } } // namespace v8::internal | 15112 } } // namespace v8::internal |
OLD | NEW |