| 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/dart_entry.h" | 8 #include "vm/dart_entry.h" |
| 9 #include "vm/flow_graph_allocator.h" | 9 #include "vm/flow_graph_allocator.h" |
| 10 #include "vm/flow_graph_builder.h" | 10 #include "vm/flow_graph_builder.h" |
| (...skipping 1337 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1348 | 1348 |
| 1349 return this; | 1349 return this; |
| 1350 } | 1350 } |
| 1351 | 1351 |
| 1352 | 1352 |
| 1353 Instruction* CheckSmiInstr::Canonicalize(FlowGraphOptimizer* optimizer) { | 1353 Instruction* CheckSmiInstr::Canonicalize(FlowGraphOptimizer* optimizer) { |
| 1354 return (value()->Type()->ToCid() == kSmiCid) ? NULL : this; | 1354 return (value()->Type()->ToCid() == kSmiCid) ? NULL : this; |
| 1355 } | 1355 } |
| 1356 | 1356 |
| 1357 | 1357 |
| 1358 Instruction* CheckNonSmiInstr::Canonicalize(FlowGraphOptimizer* optimizer) { |
| 1359 return (value()->Type()->ToCid() != kSmiCid) ? NULL : this; |
| 1360 } |
| 1361 |
| 1362 |
| 1358 Instruction* CheckEitherNonSmiInstr::Canonicalize( | 1363 Instruction* CheckEitherNonSmiInstr::Canonicalize( |
| 1359 FlowGraphOptimizer* optimizer) { | 1364 FlowGraphOptimizer* optimizer) { |
| 1360 if ((left()->Type()->ToCid() == kDoubleCid) || | 1365 if ((left()->Type()->ToCid() == kDoubleCid) || |
| 1361 (right()->Type()->ToCid() == kDoubleCid)) { | 1366 (right()->Type()->ToCid() == kDoubleCid)) { |
| 1362 return NULL; // Remove from the graph. | 1367 return NULL; // Remove from the graph. |
| 1363 } | 1368 } |
| 1364 return this; | 1369 return this; |
| 1365 } | 1370 } |
| 1366 | 1371 |
| 1367 | 1372 |
| (...skipping 1004 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2372 default: | 2377 default: |
| 2373 UNREACHABLE(); | 2378 UNREACHABLE(); |
| 2374 } | 2379 } |
| 2375 return kPowRuntimeEntry; | 2380 return kPowRuntimeEntry; |
| 2376 } | 2381 } |
| 2377 | 2382 |
| 2378 | 2383 |
| 2379 #undef __ | 2384 #undef __ |
| 2380 | 2385 |
| 2381 } // namespace dart | 2386 } // namespace dart |
| OLD | NEW |