| OLD | NEW |
| 1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 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 "v8.h" | 5 #include "v8.h" |
| 6 | 6 |
| 7 #include "lithium-allocator-inl.h" | 7 #include "lithium-allocator-inl.h" |
| 8 #include "arm64/lithium-arm64.h" | 8 #include "arm64/lithium-arm64.h" |
| 9 #include "arm64/lithium-codegen-arm64.h" | 9 #include "arm64/lithium-codegen-arm64.h" |
| 10 #include "hydrogen-osr.h" | 10 #include "hydrogen-osr.h" |
| (...skipping 1991 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2002 | 2002 |
| 2003 | 2003 |
| 2004 LInstruction* LChunkBuilder::DoDoubleBits(HDoubleBits* instr) { | 2004 LInstruction* LChunkBuilder::DoDoubleBits(HDoubleBits* instr) { |
| 2005 HValue* value = instr->value(); | 2005 HValue* value = instr->value(); |
| 2006 ASSERT(value->representation().IsDouble()); | 2006 ASSERT(value->representation().IsDouble()); |
| 2007 return DefineAsRegister(new(zone()) LDoubleBits(UseRegister(value))); | 2007 return DefineAsRegister(new(zone()) LDoubleBits(UseRegister(value))); |
| 2008 } | 2008 } |
| 2009 | 2009 |
| 2010 | 2010 |
| 2011 LInstruction* LChunkBuilder::DoConstructDouble(HConstructDouble* instr) { | 2011 LInstruction* LChunkBuilder::DoConstructDouble(HConstructDouble* instr) { |
| 2012 LOperand* lo = UseRegister(instr->lo()); | 2012 LOperand* lo = UseRegisterAndClobber(instr->lo()); |
| 2013 LOperand* hi = UseRegister(instr->hi()); | 2013 LOperand* hi = UseRegister(instr->hi()); |
| 2014 LOperand* temp = TempRegister(); | 2014 return DefineAsRegister(new(zone()) LConstructDouble(hi, lo)); |
| 2015 return DefineAsRegister(new(zone()) LConstructDouble(hi, lo, temp)); | |
| 2016 } | 2015 } |
| 2017 | 2016 |
| 2018 | 2017 |
| 2019 LInstruction* LChunkBuilder::DoReturn(HReturn* instr) { | 2018 LInstruction* LChunkBuilder::DoReturn(HReturn* instr) { |
| 2020 LOperand* context = info()->IsStub() | 2019 LOperand* context = info()->IsStub() |
| 2021 ? UseFixed(instr->context(), cp) | 2020 ? UseFixed(instr->context(), cp) |
| 2022 : NULL; | 2021 : NULL; |
| 2023 LOperand* parameter_count = UseRegisterOrConstant(instr->parameter_count()); | 2022 LOperand* parameter_count = UseRegisterOrConstant(instr->parameter_count()); |
| 2024 return new(zone()) LReturn(UseFixed(instr->value(), x0), context, | 2023 return new(zone()) LReturn(UseFixed(instr->value(), x0), context, |
| 2025 parameter_count); | 2024 parameter_count); |
| (...skipping 677 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2703 | 2702 |
| 2704 LInstruction* LChunkBuilder::DoWrapReceiver(HWrapReceiver* instr) { | 2703 LInstruction* LChunkBuilder::DoWrapReceiver(HWrapReceiver* instr) { |
| 2705 LOperand* receiver = UseRegister(instr->receiver()); | 2704 LOperand* receiver = UseRegister(instr->receiver()); |
| 2706 LOperand* function = UseRegister(instr->function()); | 2705 LOperand* function = UseRegister(instr->function()); |
| 2707 LWrapReceiver* result = new(zone()) LWrapReceiver(receiver, function); | 2706 LWrapReceiver* result = new(zone()) LWrapReceiver(receiver, function); |
| 2708 return AssignEnvironment(DefineAsRegister(result)); | 2707 return AssignEnvironment(DefineAsRegister(result)); |
| 2709 } | 2708 } |
| 2710 | 2709 |
| 2711 | 2710 |
| 2712 } } // namespace v8::internal | 2711 } } // namespace v8::internal |
| OLD | NEW |