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

Unified Diff: sdk/lib/_internal/compiler/implementation/ssa/value_range_analyzer.dart

Issue 11412105: - Move length getter and setter interceptors to the new interceptor scheme. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 8 years, 1 month 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 side-by-side diff with in-line comments
Download patch
Index: sdk/lib/_internal/compiler/implementation/ssa/value_range_analyzer.dart
===================================================================
--- sdk/lib/_internal/compiler/implementation/ssa/value_range_analyzer.dart (revision 15190)
+++ sdk/lib/_internal/compiler/implementation/ssa/value_range_analyzer.dart (working copy)
@@ -628,12 +628,12 @@
return info.newRange(value, value);
}
- Range visitInvokeInterceptor(HInvokeInterceptor interceptor) {
- if (!interceptor.isInteger(types)) return info.newUnboundRange();
- if (!interceptor.isLengthGetterOnStringOrArray(types)) {
- return visitInstruction(interceptor);
+ Range visitFieldGet(HFieldGet fieldGet) {
+ if (!fieldGet.isInteger(types)) return info.newUnboundRange();
+ if (!fieldGet.receiver.isIndexablePrimitive(types)) {
+ return visitInstruction(fieldGet);
}
- LengthValue value = info.newLengthValue(interceptor);
+ LengthValue value = info.newLengthValue(fieldGet);
// We know this range is above zero. To simplify the analysis, we
// put the zero value as the lower bound of this range. This
// allows to easily remove the second bound check in the following

Powered by Google App Engine
This is Rietveld 408576698