| 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 "src/v8.h" | 5 #include "src/v8.h" |
| 6 | 6 |
| 7 #include "src/code-stubs.h" | 7 #include "src/code-stubs.h" |
| 8 #include "src/field-index.h" | 8 #include "src/field-index.h" |
| 9 #include "src/hydrogen.h" | 9 #include "src/hydrogen.h" |
| 10 #include "src/lithium.h" | 10 #include "src/lithium.h" |
| (...skipping 585 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 596 | 596 |
| 597 | 597 |
| 598 Handle<Code> StringLengthStub::GenerateCode() { | 598 Handle<Code> StringLengthStub::GenerateCode() { |
| 599 return DoGenerateCode(this); | 599 return DoGenerateCode(this); |
| 600 } | 600 } |
| 601 | 601 |
| 602 | 602 |
| 603 template <> | 603 template <> |
| 604 HValue* CodeStubGraphBuilder<KeyedStoreFastElementStub>::BuildCodeStub() { | 604 HValue* CodeStubGraphBuilder<KeyedStoreFastElementStub>::BuildCodeStub() { |
| 605 BuildUncheckedMonomorphicElementAccess( | 605 BuildUncheckedMonomorphicElementAccess( |
| 606 GetParameter(0), GetParameter(1), GetParameter(2), | 606 GetParameter(StoreIC::kReceiverIndex), |
| 607 GetParameter(StoreIC::kNameIndex), |
| 608 GetParameter(StoreIC::kValueIndex), |
| 607 casted_stub()->is_js_array(), casted_stub()->elements_kind(), | 609 casted_stub()->is_js_array(), casted_stub()->elements_kind(), |
| 608 STORE, NEVER_RETURN_HOLE, casted_stub()->store_mode()); | 610 STORE, NEVER_RETURN_HOLE, casted_stub()->store_mode()); |
| 609 | 611 |
| 610 return GetParameter(2); | 612 return GetParameter(2); |
| 611 } | 613 } |
| 612 | 614 |
| 613 | 615 |
| 614 Handle<Code> KeyedStoreFastElementStub::GenerateCode() { | 616 Handle<Code> KeyedStoreFastElementStub::GenerateCode() { |
| 615 return DoGenerateCode(this); | 617 return DoGenerateCode(this); |
| 616 } | 618 } |
| (...skipping 404 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1021 | 1023 |
| 1022 | 1024 |
| 1023 template <> | 1025 template <> |
| 1024 HValue* CodeStubGraphBuilder<StoreGlobalStub>::BuildCodeInitializedStub() { | 1026 HValue* CodeStubGraphBuilder<StoreGlobalStub>::BuildCodeInitializedStub() { |
| 1025 StoreGlobalStub* stub = casted_stub(); | 1027 StoreGlobalStub* stub = casted_stub(); |
| 1026 Handle<Object> hole(isolate()->heap()->the_hole_value(), isolate()); | 1028 Handle<Object> hole(isolate()->heap()->the_hole_value(), isolate()); |
| 1027 Handle<Object> placeholer_value(Smi::FromInt(0), isolate()); | 1029 Handle<Object> placeholer_value(Smi::FromInt(0), isolate()); |
| 1028 Handle<PropertyCell> placeholder_cell = | 1030 Handle<PropertyCell> placeholder_cell = |
| 1029 isolate()->factory()->NewPropertyCell(placeholer_value); | 1031 isolate()->factory()->NewPropertyCell(placeholer_value); |
| 1030 | 1032 |
| 1031 HParameter* value = GetParameter(2); | 1033 HParameter* value = GetParameter(StoreIC::kValueIndex); |
| 1032 | 1034 |
| 1033 if (stub->check_global()) { | 1035 if (stub->check_global()) { |
| 1034 // Check that the map of the global has not changed: use a placeholder map | 1036 // Check that the map of the global has not changed: use a placeholder map |
| 1035 // that will be replaced later with the global object's map. | 1037 // that will be replaced later with the global object's map. |
| 1036 Handle<Map> placeholder_map = isolate()->factory()->meta_map(); | 1038 Handle<Map> placeholder_map = isolate()->factory()->meta_map(); |
| 1037 HValue* global = Add<HConstant>( | 1039 HValue* global = Add<HConstant>( |
| 1038 StoreGlobalStub::global_placeholder(isolate())); | 1040 StoreGlobalStub::global_placeholder(isolate())); |
| 1039 Add<HCheckMaps>(global, placeholder_map); | 1041 Add<HCheckMaps>(global, placeholder_map); |
| 1040 } | 1042 } |
| 1041 | 1043 |
| (...skipping 681 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1723 return Pop(); | 1725 return Pop(); |
| 1724 } | 1726 } |
| 1725 | 1727 |
| 1726 | 1728 |
| 1727 Handle<Code> KeyedLoadGenericElementStub::GenerateCode() { | 1729 Handle<Code> KeyedLoadGenericElementStub::GenerateCode() { |
| 1728 return DoGenerateCode(this); | 1730 return DoGenerateCode(this); |
| 1729 } | 1731 } |
| 1730 | 1732 |
| 1731 | 1733 |
| 1732 } } // namespace v8::internal | 1734 } } // namespace v8::internal |
| OLD | NEW |