| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "src/crankshaft/arm/lithium-codegen-arm.h" | 5 #include "src/crankshaft/arm/lithium-codegen-arm.h" |
| 6 | 6 |
| 7 #include "src/base/bits.h" | 7 #include "src/base/bits.h" |
| 8 #include "src/code-factory.h" | 8 #include "src/code-factory.h" |
| 9 #include "src/code-stubs.h" | 9 #include "src/code-stubs.h" |
| 10 #include "src/crankshaft/arm/lithium-gap-resolver-arm.h" | 10 #include "src/crankshaft/arm/lithium-gap-resolver-arm.h" |
| (...skipping 4483 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4494 Register result = ToRegister(instr->result()); | 4494 Register result = ToRegister(instr->result()); |
| 4495 | 4495 |
| 4496 // TODO(3095996): Get rid of this. For now, we need to make the | 4496 // TODO(3095996): Get rid of this. For now, we need to make the |
| 4497 // result register contain a valid pointer because it is already | 4497 // result register contain a valid pointer because it is already |
| 4498 // contained in the register pointer map. | 4498 // contained in the register pointer map. |
| 4499 __ mov(result, Operand::Zero()); | 4499 __ mov(result, Operand::Zero()); |
| 4500 | 4500 |
| 4501 PushSafepointRegistersScope scope(this); | 4501 PushSafepointRegistersScope scope(this); |
| 4502 __ SmiTag(char_code); | 4502 __ SmiTag(char_code); |
| 4503 __ push(char_code); | 4503 __ push(char_code); |
| 4504 CallRuntimeFromDeferred(Runtime::kCharFromCode, 1, instr, instr->context()); | 4504 CallRuntimeFromDeferred(Runtime::kStringCharFromCode, 1, instr, |
| 4505 instr->context()); |
| 4505 __ StoreToSafepointRegisterSlot(r0, result); | 4506 __ StoreToSafepointRegisterSlot(r0, result); |
| 4506 } | 4507 } |
| 4507 | 4508 |
| 4508 | 4509 |
| 4509 void LCodeGen::DoInteger32ToDouble(LInteger32ToDouble* instr) { | 4510 void LCodeGen::DoInteger32ToDouble(LInteger32ToDouble* instr) { |
| 4510 LOperand* input = instr->value(); | 4511 LOperand* input = instr->value(); |
| 4511 DCHECK(input->IsRegister() || input->IsStackSlot()); | 4512 DCHECK(input->IsRegister() || input->IsStackSlot()); |
| 4512 LOperand* output = instr->result(); | 4513 LOperand* output = instr->result(); |
| 4513 DCHECK(output->IsDoubleRegister()); | 4514 DCHECK(output->IsDoubleRegister()); |
| 4514 SwVfpRegister single_scratch = double_scratch0().low(); | 4515 SwVfpRegister single_scratch = double_scratch0().low(); |
| (...skipping 1255 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5770 __ push(ToRegister(instr->function())); | 5771 __ push(ToRegister(instr->function())); |
| 5771 CallRuntime(Runtime::kPushBlockContext, 2, instr); | 5772 CallRuntime(Runtime::kPushBlockContext, 2, instr); |
| 5772 RecordSafepoint(Safepoint::kNoLazyDeopt); | 5773 RecordSafepoint(Safepoint::kNoLazyDeopt); |
| 5773 } | 5774 } |
| 5774 | 5775 |
| 5775 | 5776 |
| 5776 #undef __ | 5777 #undef __ |
| 5777 | 5778 |
| 5778 } // namespace internal | 5779 } // namespace internal |
| 5779 } // namespace v8 | 5780 } // namespace v8 |
| OLD | NEW |