Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(124)

Side by Side Diff: src/code-stubs-hydrogen.cc

Issue 2325013003: [stubs] Port StoreFieldStub to TurboFan. (Closed)
Patch Set: Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/code-stubs.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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/code-stubs.h" 5 #include "src/code-stubs.h"
6 6
7 #include <memory> 7 #include <memory>
8 8
9 #include "src/bailout-reason.h" 9 #include "src/bailout-reason.h"
10 #include "src/crankshaft/hydrogen.h" 10 #include "src/crankshaft/hydrogen.h"
(...skipping 1082 matching lines...) Expand 10 before | Expand all | Expand 10 after
1093 } 1093 }
1094 } else if (representation.IsHeapObject()) { 1094 } else if (representation.IsHeapObject()) {
1095 BuildCheckHeapObject(value); 1095 BuildCheckHeapObject(value);
1096 } 1096 }
1097 1097
1098 Add<HStoreNamedField>(object, access, value, INITIALIZING_STORE); 1098 Add<HStoreNamedField>(object, access, value, INITIALIZING_STORE);
1099 } 1099 }
1100 1100
1101 1101
1102 template <> 1102 template <>
1103 HValue* CodeStubGraphBuilder<StoreFieldStub>::BuildCodeStub() {
1104 BuildStoreNamedField(GetParameter(Descriptor::kReceiver),
1105 GetParameter(Descriptor::kValue), casted_stub()->index(),
1106 casted_stub()->representation(), false);
1107 return GetParameter(Descriptor::kValue);
1108 }
1109
1110
1111 Handle<Code> StoreFieldStub::GenerateCode() { return DoGenerateCode(this); }
1112
1113
1114 template <>
1115 HValue* CodeStubGraphBuilder<StoreTransitionStub>::BuildCodeStub() { 1103 HValue* CodeStubGraphBuilder<StoreTransitionStub>::BuildCodeStub() {
1116 HValue* object = GetParameter(StoreTransitionHelper::ReceiverIndex()); 1104 HValue* object = GetParameter(StoreTransitionHelper::ReceiverIndex());
1117 HValue* value = GetParameter(StoreTransitionHelper::ValueIndex()); 1105 HValue* value = GetParameter(StoreTransitionHelper::ValueIndex());
1118 StoreTransitionStub::StoreMode store_mode = casted_stub()->store_mode(); 1106 StoreTransitionStub::StoreMode store_mode = casted_stub()->store_mode();
1119 1107
1120 if (store_mode != StoreTransitionStub::StoreMapOnly) { 1108 if (store_mode != StoreTransitionStub::StoreMapOnly) {
1121 value = GetParameter(StoreTransitionHelper::ValueIndex()); 1109 value = GetParameter(StoreTransitionHelper::ValueIndex());
1122 Representation representation = casted_stub()->representation(); 1110 Representation representation = casted_stub()->representation();
1123 if (representation.IsDouble()) { 1111 if (representation.IsDouble()) {
1124 // In case we are storing a double, assure that the value is a double 1112 // In case we are storing a double, assure that the value is a double
(...skipping 819 matching lines...) Expand 10 before | Expand all | Expand 10 after
1944 return Pop(); 1932 return Pop();
1945 } 1933 }
1946 1934
1947 1935
1948 Handle<Code> KeyedLoadGenericStub::GenerateCode() { 1936 Handle<Code> KeyedLoadGenericStub::GenerateCode() {
1949 return DoGenerateCode(this); 1937 return DoGenerateCode(this);
1950 } 1938 }
1951 1939
1952 } // namespace internal 1940 } // namespace internal
1953 } // namespace v8 1941 } // namespace v8
OLDNEW
« no previous file with comments | « src/code-stubs.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698