| 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/intermediate_language.h" | 8 #include "vm/intermediate_language.h" |
| 9 | 9 |
| 10 #include "vm/dart_entry.h" | 10 #include "vm/dart_entry.h" |
| (...skipping 4388 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4399 | 4399 |
| 4400 | 4400 |
| 4401 void SmiToDoubleInstr::EmitNativeCode(FlowGraphCompiler* compiler) { | 4401 void SmiToDoubleInstr::EmitNativeCode(FlowGraphCompiler* compiler) { |
| 4402 const Register value = locs()->in(0).reg(); | 4402 const Register value = locs()->in(0).reg(); |
| 4403 const VRegister result = locs()->out(0).fpu_reg(); | 4403 const VRegister result = locs()->out(0).fpu_reg(); |
| 4404 __ SmiUntag(TMP, value); | 4404 __ SmiUntag(TMP, value); |
| 4405 __ scvtfd(result, TMP); | 4405 __ scvtfd(result, TMP); |
| 4406 } | 4406 } |
| 4407 | 4407 |
| 4408 | 4408 |
| 4409 LocationSummary* MintToDoubleInstr::MakeLocationSummary(Isolate* isolate, |
| 4410 bool opt) const { |
| 4411 UNIMPLEMENTED(); |
| 4412 return NULL; |
| 4413 } |
| 4414 |
| 4415 |
| 4416 void MintToDoubleInstr::EmitNativeCode(FlowGraphCompiler* compiler) { |
| 4417 UNIMPLEMENTED(); |
| 4418 } |
| 4419 |
| 4420 |
| 4409 LocationSummary* DoubleToIntegerInstr::MakeLocationSummary(Isolate* isolate, | 4421 LocationSummary* DoubleToIntegerInstr::MakeLocationSummary(Isolate* isolate, |
| 4410 bool opt) const { | 4422 bool opt) const { |
| 4411 const intptr_t kNumInputs = 1; | 4423 const intptr_t kNumInputs = 1; |
| 4412 const intptr_t kNumTemps = 0; | 4424 const intptr_t kNumTemps = 0; |
| 4413 LocationSummary* result = new(isolate) LocationSummary( | 4425 LocationSummary* result = new(isolate) LocationSummary( |
| 4414 isolate, kNumInputs, kNumTemps, LocationSummary::kCall); | 4426 isolate, kNumInputs, kNumTemps, LocationSummary::kCall); |
| 4415 result->set_in(0, Location::RegisterLocation(R1)); | 4427 result->set_in(0, Location::RegisterLocation(R1)); |
| 4416 result->set_out(0, Location::RegisterLocation(R0)); | 4428 result->set_out(0, Location::RegisterLocation(R0)); |
| 4417 return result; | 4429 return result; |
| 4418 } | 4430 } |
| (...skipping 1059 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5478 compiler->GenerateCall(token_pos(), &label, stub_kind_, locs()); | 5490 compiler->GenerateCall(token_pos(), &label, stub_kind_, locs()); |
| 5479 #if defined(DEBUG) | 5491 #if defined(DEBUG) |
| 5480 __ LoadImmediate(R4, kInvalidObjectPointer, kNoPP); | 5492 __ LoadImmediate(R4, kInvalidObjectPointer, kNoPP); |
| 5481 __ LoadImmediate(R5, kInvalidObjectPointer, kNoPP); | 5493 __ LoadImmediate(R5, kInvalidObjectPointer, kNoPP); |
| 5482 #endif | 5494 #endif |
| 5483 } | 5495 } |
| 5484 | 5496 |
| 5485 } // namespace dart | 5497 } // namespace dart |
| 5486 | 5498 |
| 5487 #endif // defined TARGET_ARCH_ARM64 | 5499 #endif // defined TARGET_ARCH_ARM64 |
| OLD | NEW |