OLD | NEW |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 #include "vm/intermediate_language.h" | 5 #include "vm/intermediate_language.h" |
6 | 6 |
7 #include "vm/bit_vector.h" | 7 #include "vm/bit_vector.h" |
8 #include "vm/bootstrap.h" | 8 #include "vm/bootstrap.h" |
9 #include "vm/compiler.h" | 9 #include "vm/compiler.h" |
10 #include "vm/constant_propagator.h" | 10 #include "vm/constant_propagator.h" |
(...skipping 2048 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2059 return NULL; | 2059 return NULL; |
2060 } | 2060 } |
2061 if ((constrained_type() != NULL) && | 2061 if ((constrained_type() != NULL) && |
2062 Type()->IsEqualTo(value()->definition()->Type())) { | 2062 Type()->IsEqualTo(value()->definition()->Type())) { |
2063 return value()->definition(); | 2063 return value()->definition(); |
2064 } | 2064 } |
2065 return this; | 2065 return this; |
2066 } | 2066 } |
2067 | 2067 |
2068 | 2068 |
| 2069 Instruction* CheckStackOverflowInstr::Canonicalize(FlowGraph* flow_graph) { |
| 2070 switch (kind_) { |
| 2071 case kFull: |
| 2072 return this; |
| 2073 case kOsrEntry: |
| 2074 // Don't need OSR entries in the optimized code. |
| 2075 return NULL; |
| 2076 } |
| 2077 } |
| 2078 |
| 2079 |
2069 bool LoadFieldInstr::IsImmutableLengthLoad() const { | 2080 bool LoadFieldInstr::IsImmutableLengthLoad() const { |
2070 switch (recognized_kind()) { | 2081 switch (recognized_kind()) { |
2071 case MethodRecognizer::kObjectArrayLength: | 2082 case MethodRecognizer::kObjectArrayLength: |
2072 case MethodRecognizer::kImmutableArrayLength: | 2083 case MethodRecognizer::kImmutableArrayLength: |
2073 case MethodRecognizer::kTypedDataLength: | 2084 case MethodRecognizer::kTypedDataLength: |
2074 case MethodRecognizer::kStringBaseLength: | 2085 case MethodRecognizer::kStringBaseLength: |
2075 return true; | 2086 return true; |
2076 default: | 2087 default: |
2077 return false; | 2088 return false; |
2078 } | 2089 } |
(...skipping 2280 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4359 "native function '%s' (%" Pd " arguments) cannot be found", | 4370 "native function '%s' (%" Pd " arguments) cannot be found", |
4360 native_name().ToCString(), function().NumParameters()); | 4371 native_name().ToCString(), function().NumParameters()); |
4361 } | 4372 } |
4362 set_is_auto_scope(auto_setup_scope); | 4373 set_is_auto_scope(auto_setup_scope); |
4363 set_native_c_function(native_function); | 4374 set_native_c_function(native_function); |
4364 } | 4375 } |
4365 | 4376 |
4366 #undef __ | 4377 #undef __ |
4367 | 4378 |
4368 } // namespace dart | 4379 } // namespace dart |
OLD | NEW |