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

Side by Side Diff: src/hydrogen.cc

Issue 1176263004: Introduce a base pointer field in FixedTypedArrayBase and teach GC about it (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years, 6 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/heap/store-buffer.cc ('k') | src/hydrogen-instructions.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 the V8 project authors. All rights reserved. 1 // Copyright 2013 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/hydrogen.h" 5 #include "src/hydrogen.h"
6 6
7 #include <sstream> 7 #include <sstream>
8 8
9 #include "src/v8.h" 9 #include "src/v8.h"
10 10
(...skipping 9898 matching lines...) Expand 10 before | Expand all | Expand 10 after
9909 if (array_type == kExternalFloat64Array) { 9909 if (array_type == kExternalFloat64Array) {
9910 elements->MakeDoubleAligned(); 9910 elements->MakeDoubleAligned();
9911 } 9911 }
9912 #endif 9912 #endif
9913 9913
9914 AddStoreMapConstant(elements, fixed_typed_array_map); 9914 AddStoreMapConstant(elements, fixed_typed_array_map);
9915 9915
9916 Add<HStoreNamedField>(elements, 9916 Add<HStoreNamedField>(elements,
9917 HObjectAccess::ForFixedArrayLength(), 9917 HObjectAccess::ForFixedArrayLength(),
9918 length); 9918 length);
9919 Add<HStoreNamedField>(
9920 elements, HObjectAccess::ForFixedTypedArrayBaseBasePointer(), elements);
9919 9921
9920 HValue* filler = Add<HConstant>(static_cast<int32_t>(0)); 9922 HValue* filler = Add<HConstant>(static_cast<int32_t>(0));
9921 9923
9922 if (initialize) { 9924 if (initialize) {
9923 LoopBuilder builder(this, context(), LoopBuilder::kPostIncrement); 9925 LoopBuilder builder(this, context(), LoopBuilder::kPostIncrement);
9924 9926
9925 HValue* key = builder.BeginBody( 9927 HValue* key = builder.BeginBody(
9926 Add<HConstant>(static_cast<int32_t>(0)), 9928 Add<HConstant>(static_cast<int32_t>(0)),
9927 length, Token::LT); 9929 length, Token::LT);
9928 Add<HStoreKeyed>(elements, key, filler, fixed_elements_kind); 9930 Add<HStoreKeyed>(elements, key, filler, fixed_elements_kind);
(...skipping 3245 matching lines...) Expand 10 before | Expand all | Expand 10 after
13174 isolate()->GetHTracer()->TraceHydrogen(name(), graph_); 13176 isolate()->GetHTracer()->TraceHydrogen(name(), graph_);
13175 } 13177 }
13176 13178
13177 #ifdef DEBUG 13179 #ifdef DEBUG
13178 graph_->Verify(false); // No full verify. 13180 graph_->Verify(false); // No full verify.
13179 #endif 13181 #endif
13180 } 13182 }
13181 13183
13182 } // namespace internal 13184 } // namespace internal
13183 } // namespace v8 13185 } // namespace v8
OLDNEW
« no previous file with comments | « src/heap/store-buffer.cc ('k') | src/hydrogen-instructions.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698