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

Side by Side Diff: src/types.cc

Issue 1021713005: [turbofan]: Integrate basic type feedback for property accesses. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years, 8 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/flag-definitions.h ('k') | tools/gyp/v8.gyp » ('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 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 <iomanip> 5 #include <iomanip>
6 6
7 #include "src/types.h" 7 #include "src/types.h"
8 8
9 #include "src/ostreams.h" 9 #include "src/ostreams.h"
10 #include "src/types-inl.h" 10 #include "src/types-inl.h"
(...skipping 249 matching lines...) Expand 10 before | Expand all | Expand 10 after
260 case MAP_TYPE: 260 case MAP_TYPE:
261 // When compiling stub templates, the meta map is used as a place holder 261 // When compiling stub templates, the meta map is used as a place holder
262 // for the actual map with which the template is later instantiated. 262 // for the actual map with which the template is later instantiated.
263 // We treat it as a kind of type variable whose upper bound is Any. 263 // We treat it as a kind of type variable whose upper bound is Any.
264 // TODO(rossberg): for caching of CompareNilIC stubs to work correctly, 264 // TODO(rossberg): for caching of CompareNilIC stubs to work correctly,
265 // we must exclude Undetectable here. This makes no sense, really, 265 // we must exclude Undetectable here. This makes no sense, really,
266 // because it means that the template isn't actually parametric. 266 // because it means that the template isn't actually parametric.
267 // Also, it doesn't apply elsewhere. 8-( 267 // Also, it doesn't apply elsewhere. 8-(
268 // We ought to find a cleaner solution for compiling stubs parameterised 268 // We ought to find a cleaner solution for compiling stubs parameterised
269 // over type or class variables, esp ones with bounds... 269 // over type or class variables, esp ones with bounds...
270 return kDetectable; 270 return kDetectable & kTaggedPointer;
271 case DECLARED_ACCESSOR_INFO_TYPE: 271 case DECLARED_ACCESSOR_INFO_TYPE:
272 case EXECUTABLE_ACCESSOR_INFO_TYPE: 272 case EXECUTABLE_ACCESSOR_INFO_TYPE:
273 case SHARED_FUNCTION_INFO_TYPE: 273 case SHARED_FUNCTION_INFO_TYPE:
274 case ACCESSOR_PAIR_TYPE: 274 case ACCESSOR_PAIR_TYPE:
275 case FIXED_ARRAY_TYPE: 275 case FIXED_ARRAY_TYPE:
276 case BYTE_ARRAY_TYPE: 276 case BYTE_ARRAY_TYPE:
277 case FOREIGN_TYPE: 277 case FOREIGN_TYPE:
278 case SCRIPT_TYPE: 278 case SCRIPT_TYPE:
279 case CODE_TYPE: 279 case CODE_TYPE:
280 return kInternal & kTaggedPointer; 280 return kInternal & kTaggedPointer;
(...skipping 1079 matching lines...) Expand 10 before | Expand all | Expand 10 after
1360 template class TypeImpl<HeapTypeConfig>::Iterator<i::Object>; 1360 template class TypeImpl<HeapTypeConfig>::Iterator<i::Object>;
1361 1361
1362 template TypeImpl<ZoneTypeConfig>::TypeHandle 1362 template TypeImpl<ZoneTypeConfig>::TypeHandle
1363 TypeImpl<ZoneTypeConfig>::Convert<HeapType>( 1363 TypeImpl<ZoneTypeConfig>::Convert<HeapType>(
1364 TypeImpl<HeapTypeConfig>::TypeHandle, TypeImpl<ZoneTypeConfig>::Region*); 1364 TypeImpl<HeapTypeConfig>::TypeHandle, TypeImpl<ZoneTypeConfig>::Region*);
1365 template TypeImpl<HeapTypeConfig>::TypeHandle 1365 template TypeImpl<HeapTypeConfig>::TypeHandle
1366 TypeImpl<HeapTypeConfig>::Convert<Type>( 1366 TypeImpl<HeapTypeConfig>::Convert<Type>(
1367 TypeImpl<ZoneTypeConfig>::TypeHandle, TypeImpl<HeapTypeConfig>::Region*); 1367 TypeImpl<ZoneTypeConfig>::TypeHandle, TypeImpl<HeapTypeConfig>::Region*);
1368 1368
1369 } } // namespace v8::internal 1369 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/flag-definitions.h ('k') | tools/gyp/v8.gyp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698