OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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 "src/lookup.h" | 5 #include "src/lookup.h" |
6 | 6 |
7 #include "src/bootstrapper.h" | 7 #include "src/bootstrapper.h" |
8 #include "src/deoptimizer.h" | 8 #include "src/deoptimizer.h" |
9 #include "src/elements.h" | 9 #include "src/elements.h" |
10 #include "src/field-type.h" | 10 #include "src/field-type.h" |
(...skipping 398 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
409 if (IsElement()) { | 409 if (IsElement()) { |
410 Handle<JSObject> object = Handle<JSObject>::cast(holder); | 410 Handle<JSObject> object = Handle<JSObject>::cast(holder); |
411 ElementsAccessor* accessor = object->GetElementsAccessor(); | 411 ElementsAccessor* accessor = object->GetElementsAccessor(); |
412 accessor->Delete(object, number_); | 412 accessor->Delete(object, number_); |
413 } else { | 413 } else { |
414 bool is_prototype_map = holder->map()->is_prototype_map(); | 414 bool is_prototype_map = holder->map()->is_prototype_map(); |
415 RuntimeCallTimerScope stats_scope( | 415 RuntimeCallTimerScope stats_scope( |
416 isolate_, is_prototype_map | 416 isolate_, is_prototype_map |
417 ? &RuntimeCallStats::PrototypeObject_DeleteProperty | 417 ? &RuntimeCallStats::PrototypeObject_DeleteProperty |
418 : &RuntimeCallStats::Object_DeleteProperty); | 418 : &RuntimeCallStats::Object_DeleteProperty); |
| 419 TRACE_EVENT_RUNTIME_CALL_STATS_TRACING_SCOPED( |
| 420 isolate_, |
| 421 (is_prototype_map |
| 422 ? &tracing::TraceEventStatsTable::PrototypeObject_DeleteProperty |
| 423 : &tracing::TraceEventStatsTable::Object_DeleteProperty)); |
419 | 424 |
420 PropertyNormalizationMode mode = | 425 PropertyNormalizationMode mode = |
421 is_prototype_map ? KEEP_INOBJECT_PROPERTIES : CLEAR_INOBJECT_PROPERTIES; | 426 is_prototype_map ? KEEP_INOBJECT_PROPERTIES : CLEAR_INOBJECT_PROPERTIES; |
422 | 427 |
423 if (holder->HasFastProperties()) { | 428 if (holder->HasFastProperties()) { |
424 JSObject::NormalizeProperties(Handle<JSObject>::cast(holder), mode, 0, | 429 JSObject::NormalizeProperties(Handle<JSObject>::cast(holder), mode, 0, |
425 "DeletingProperty"); | 430 "DeletingProperty"); |
426 ReloadPropertyInformation<false>(); | 431 ReloadPropertyInformation<false>(); |
427 } | 432 } |
428 // TODO(verwaest): Get rid of the name_ argument. | 433 // TODO(verwaest): Get rid of the name_ argument. |
(...skipping 402 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
831 : access_check_info->named_interceptor(); | 836 : access_check_info->named_interceptor(); |
832 if (interceptor) { | 837 if (interceptor) { |
833 return handle(InterceptorInfo::cast(interceptor), isolate_); | 838 return handle(InterceptorInfo::cast(interceptor), isolate_); |
834 } | 839 } |
835 } | 840 } |
836 return Handle<InterceptorInfo>(); | 841 return Handle<InterceptorInfo>(); |
837 } | 842 } |
838 | 843 |
839 } // namespace internal | 844 } // namespace internal |
840 } // namespace v8 | 845 } // namespace v8 |
OLD | NEW |