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

Side by Side Diff: src/types.h

Issue 650513003: Again reland "Refine expression typing, esp. by propagating range information." (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 2 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 | Annotate | Revision Log
« no previous file with comments | « src/compiler/typer.cc ('k') | src/types.cc » ('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 #ifndef V8_TYPES_H_ 5 #ifndef V8_TYPES_H_
6 #define V8_TYPES_H_ 6 #define V8_TYPES_H_
7 7
8 #include "src/conversions.h" 8 #include "src/conversions.h"
9 #include "src/factory.h" 9 #include "src/factory.h"
10 #include "src/handles.h" 10 #include "src/handles.h"
(...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after
235 * 235 *
236 * Otherwise: 236 * Otherwise:
237 * 237 *
238 * ON OSS US OU32 ON 238 * ON OSS US OU32 ON
239 * ______[_______________[_______________[_______[_______ 239 * ______[_______________[_______________[_______[_______
240 * -2^31 0 2^31 2^32 240 * -2^31 0 2^31 2^32
241 * 241 *
242 * 242 *
243 * E.g., OtherUnsigned32 (OU32) covers all integers from 2^31 to 2^32-1. 243 * E.g., OtherUnsigned32 (OU32) covers all integers from 2^31 to 2^32-1.
244 * 244 *
245 * NOTE: OtherSigned32 (OS32) and OU31 (OtherUnsigned31) are empty if Smis are
246 * 32-bit wide. They should thus never be used directly, only indirectly
247 * via e.g. Number.
245 */ 248 */
246 249
247 #define PROPER_BITSET_TYPE_LIST(V) \ 250 #define PROPER_BITSET_TYPE_LIST(V) \
248 REPRESENTATION_BITSET_TYPE_LIST(V) \ 251 REPRESENTATION_BITSET_TYPE_LIST(V) \
249 SEMANTIC_BITSET_TYPE_LIST(V) 252 SEMANTIC_BITSET_TYPE_LIST(V)
250 253
251 #define BITSET_TYPE_LIST(V) \ 254 #define BITSET_TYPE_LIST(V) \
252 MASK_BITSET_TYPE_LIST(V) \ 255 MASK_BITSET_TYPE_LIST(V) \
253 PROPER_BITSET_TYPE_LIST(V) 256 PROPER_BITSET_TYPE_LIST(V)
254 257
(...skipping 786 matching lines...) Expand 10 before | Expand all | Expand 10 after
1041 bool Narrows(BoundsImpl that) { 1044 bool Narrows(BoundsImpl that) {
1042 return that.lower->Is(this->lower) && this->upper->Is(that.upper); 1045 return that.lower->Is(this->lower) && this->upper->Is(that.upper);
1043 } 1046 }
1044 }; 1047 };
1045 1048
1046 typedef BoundsImpl<ZoneTypeConfig> Bounds; 1049 typedef BoundsImpl<ZoneTypeConfig> Bounds;
1047 1050
1048 } } // namespace v8::internal 1051 } } // namespace v8::internal
1049 1052
1050 #endif // V8_TYPES_H_ 1053 #endif // V8_TYPES_H_
OLDNEW
« no previous file with comments | « src/compiler/typer.cc ('k') | src/types.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698