| OLD | NEW |
| 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, 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_MIPS. | 5 #include "vm/globals.h" // Needed here to get TARGET_ARCH_MIPS. |
| 6 #if defined(TARGET_ARCH_MIPS) | 6 #if defined(TARGET_ARCH_MIPS) |
| 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 1976 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1987 __ BranchEqual(temp2, Immediate(kDoubleCid), &store_double); | 1987 __ BranchEqual(temp2, Immediate(kDoubleCid), &store_double); |
| 1988 | 1988 |
| 1989 // Fall through. | 1989 // Fall through. |
| 1990 __ b(&store_pointer); | 1990 __ b(&store_pointer); |
| 1991 | 1991 |
| 1992 if (!compiler->is_optimizing()) { | 1992 if (!compiler->is_optimizing()) { |
| 1993 locs()->live_registers()->Add(locs()->in(0)); | 1993 locs()->live_registers()->Add(locs()->in(0)); |
| 1994 locs()->live_registers()->Add(locs()->in(1)); | 1994 locs()->live_registers()->Add(locs()->in(1)); |
| 1995 } | 1995 } |
| 1996 | 1996 |
| 1997 // Manually preserve temp which could be clobbered on the slow path. |
| 1998 locs()->live_registers()->Add(locs()->temp(0)); |
| 1999 |
| 1997 { | 2000 { |
| 1998 __ Bind(&store_double); | 2001 __ Bind(&store_double); |
| 1999 EnsureMutableBox(compiler, | 2002 EnsureMutableBox(compiler, |
| 2000 this, | 2003 this, |
| 2001 temp, | 2004 temp, |
| 2002 compiler->double_class(), | 2005 compiler->double_class(), |
| 2003 instance_reg, | 2006 instance_reg, |
| 2004 offset_in_bytes_, | 2007 offset_in_bytes_, |
| 2005 temp2); | 2008 temp2); |
| 2006 __ LoadDFromOffset(fpu_temp, | 2009 __ LoadDFromOffset(fpu_temp, |
| (...skipping 3550 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5557 compiler->GenerateCall(token_pos(), &label, stub_kind_, locs()); | 5560 compiler->GenerateCall(token_pos(), &label, stub_kind_, locs()); |
| 5558 #if defined(DEBUG) | 5561 #if defined(DEBUG) |
| 5559 __ LoadImmediate(S4, kInvalidObjectPointer); | 5562 __ LoadImmediate(S4, kInvalidObjectPointer); |
| 5560 __ LoadImmediate(S5, kInvalidObjectPointer); | 5563 __ LoadImmediate(S5, kInvalidObjectPointer); |
| 5561 #endif | 5564 #endif |
| 5562 } | 5565 } |
| 5563 | 5566 |
| 5564 } // namespace dart | 5567 } // namespace dart |
| 5565 | 5568 |
| 5566 #endif // defined TARGET_ARCH_MIPS | 5569 #endif // defined TARGET_ARCH_MIPS |
| OLD | NEW |