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