OLD | NEW |
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, 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_ARM64. | 5 #include "vm/globals.h" // Needed here to get TARGET_ARCH_ARM64. |
6 #if defined(TARGET_ARCH_ARM64) | 6 #if defined(TARGET_ARCH_ARM64) |
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 456 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
467 num_args_checked = 2; | 467 num_args_checked = 2; |
468 } | 468 } |
469 const ICData& ic_data = ICData::ZoneHandle( | 469 const ICData& ic_data = ICData::ZoneHandle( |
470 ICData::New(parsed_function().function(), // Caller function. | 470 ICData::New(parsed_function().function(), // Caller function. |
471 String::Handle(target_function.name()), | 471 String::Handle(target_function.name()), |
472 arguments_descriptor, | 472 arguments_descriptor, |
473 deopt_id, | 473 deopt_id, |
474 num_args_checked)); // No arguments checked. | 474 num_args_checked)); // No arguments checked. |
475 ic_data.AddTarget(target_function); | 475 ic_data.AddTarget(target_function); |
476 uword label_address = 0; | 476 uword label_address = 0; |
477 if (ic_data.num_args_tested() == 0) { | 477 if (ic_data.NumArgsTested() == 0) { |
478 label_address = StubCode::ZeroArgsUnoptimizedStaticCallEntryPoint(); | 478 label_address = StubCode::ZeroArgsUnoptimizedStaticCallEntryPoint(); |
479 } else if (ic_data.num_args_tested() == 2) { | 479 } else if (ic_data.NumArgsTested() == 2) { |
480 label_address = StubCode::TwoArgsUnoptimizedStaticCallEntryPoint(); | 480 label_address = StubCode::TwoArgsUnoptimizedStaticCallEntryPoint(); |
481 } else { | 481 } else { |
482 UNIMPLEMENTED(); | 482 UNIMPLEMENTED(); |
483 } | 483 } |
484 ExternalLabel target_label("StaticCallICStub", label_address); | 484 ExternalLabel target_label("StaticCallICStub", label_address); |
485 __ LoadObject(R5, ic_data, PP); | 485 __ LoadObject(R5, ic_data, PP); |
486 GenerateDartCall(deopt_id, | 486 GenerateDartCall(deopt_id, |
487 token_pos, | 487 token_pos, |
488 &target_label, | 488 &target_label, |
489 PcDescriptors::kUnoptStaticCall, | 489 PcDescriptors::kUnoptStaticCall, |
(...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
667 void ParallelMoveResolver::RestoreFpuScratch(FpuRegister reg) { | 667 void ParallelMoveResolver::RestoreFpuScratch(FpuRegister reg) { |
668 UNIMPLEMENTED(); | 668 UNIMPLEMENTED(); |
669 } | 669 } |
670 | 670 |
671 | 671 |
672 #undef __ | 672 #undef __ |
673 | 673 |
674 } // namespace dart | 674 } // namespace dart |
675 | 675 |
676 #endif // defined TARGET_ARCH_ARM64 | 676 #endif // defined TARGET_ARCH_ARM64 |
OLD | NEW |