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/globals.h" // Needed here to get TARGET_ARCH_ARM. | 5 #include "vm/globals.h" // Needed here to get TARGET_ARCH_ARM. |
6 #if defined(TARGET_ARCH_ARM) | 6 #if defined(TARGET_ARCH_ARM) |
7 | 7 |
8 #include "vm/flow_graph_compiler.h" | 8 #include "vm/flow_graph_compiler.h" |
9 | 9 |
10 #include "vm/ast_printer.h" | 10 #include "vm/ast_printer.h" |
(...skipping 1420 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1431 locs); | 1431 locs); |
1432 AddStaticCallTarget(function); | 1432 AddStaticCallTarget(function); |
1433 __ Drop(argument_count); | 1433 __ Drop(argument_count); |
1434 } | 1434 } |
1435 | 1435 |
1436 | 1436 |
1437 void FlowGraphCompiler::EmitEqualityRegConstCompare(Register reg, | 1437 void FlowGraphCompiler::EmitEqualityRegConstCompare(Register reg, |
1438 const Object& obj, | 1438 const Object& obj, |
1439 bool needs_number_check, | 1439 bool needs_number_check, |
1440 intptr_t token_pos) { | 1440 intptr_t token_pos) { |
1441 if (needs_number_check && | 1441 if (needs_number_check) { |
1442 (obj.IsMint() || obj.IsDouble() || obj.IsBigint())) { | 1442 ASSERT(!obj.IsMint() && !obj.IsDouble() && !obj.IsBigint()); |
1443 __ Push(reg); | 1443 __ Push(reg); |
1444 __ PushObject(obj); | 1444 __ PushObject(obj); |
1445 if (is_optimizing()) { | 1445 if (is_optimizing()) { |
1446 __ BranchLinkPatchable( | 1446 __ BranchLinkPatchable( |
1447 &StubCode::OptimizedIdenticalWithNumberCheckLabel()); | 1447 &StubCode::OptimizedIdenticalWithNumberCheckLabel()); |
1448 } else { | 1448 } else { |
1449 __ BranchLinkPatchable( | 1449 __ BranchLinkPatchable( |
1450 &StubCode::UnoptimizedIdenticalWithNumberCheckLabel()); | 1450 &StubCode::UnoptimizedIdenticalWithNumberCheckLabel()); |
1451 } | 1451 } |
1452 AddCurrentDescriptor(PcDescriptors::kRuntimeCall, | 1452 AddCurrentDescriptor(PcDescriptors::kRuntimeCall, |
(...skipping 420 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1873 DRegister dreg = EvenDRegisterOf(reg); | 1873 DRegister dreg = EvenDRegisterOf(reg); |
1874 __ vldrd(dreg, Address(SP, kDoubleSize, Address::PostIndex)); | 1874 __ vldrd(dreg, Address(SP, kDoubleSize, Address::PostIndex)); |
1875 } | 1875 } |
1876 | 1876 |
1877 | 1877 |
1878 #undef __ | 1878 #undef __ |
1879 | 1879 |
1880 } // namespace dart | 1880 } // namespace dart |
1881 | 1881 |
1882 #endif // defined TARGET_ARCH_ARM | 1882 #endif // defined TARGET_ARCH_ARM |
OLD | NEW |