| OLD | NEW | 
|---|
| 1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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/compiler/code-generator.h" | 5 #include "src/compiler/code-generator.h" | 
| 6 | 6 | 
| 7 #include "src/arm/macro-assembler-arm.h" | 7 #include "src/arm/macro-assembler-arm.h" | 
| 8 #include "src/compiler/code-generator-impl.h" | 8 #include "src/compiler/code-generator-impl.h" | 
| 9 #include "src/compiler/gap-resolver.h" | 9 #include "src/compiler/gap-resolver.h" | 
| 10 #include "src/compiler/node-matchers.h" | 10 #include "src/compiler/node-matchers.h" | 
| (...skipping 801 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 812     __ vldr(temp_1, dst); | 812     __ vldr(temp_1, dst); | 
| 813     __ str(temp_0, dst); | 813     __ str(temp_0, dst); | 
| 814     __ vstr(temp_1, src); | 814     __ vstr(temp_1, src); | 
| 815   } else if (source->IsDoubleRegister()) { | 815   } else if (source->IsDoubleRegister()) { | 
| 816     DwVfpRegister temp = kScratchDoubleReg; | 816     DwVfpRegister temp = kScratchDoubleReg; | 
| 817     DwVfpRegister src = g.ToDoubleRegister(source); | 817     DwVfpRegister src = g.ToDoubleRegister(source); | 
| 818     if (destination->IsDoubleRegister()) { | 818     if (destination->IsDoubleRegister()) { | 
| 819       DwVfpRegister dst = g.ToDoubleRegister(destination); | 819       DwVfpRegister dst = g.ToDoubleRegister(destination); | 
| 820       __ Move(temp, src); | 820       __ Move(temp, src); | 
| 821       __ Move(src, dst); | 821       __ Move(src, dst); | 
| 822       __ Move(src, temp); | 822       __ Move(dst, temp); | 
| 823     } else { | 823     } else { | 
| 824       DCHECK(destination->IsDoubleStackSlot()); | 824       DCHECK(destination->IsDoubleStackSlot()); | 
| 825       MemOperand dst = g.ToMemOperand(destination); | 825       MemOperand dst = g.ToMemOperand(destination); | 
| 826       __ Move(temp, src); | 826       __ Move(temp, src); | 
| 827       __ vldr(src, dst); | 827       __ vldr(src, dst); | 
| 828       __ vstr(temp, dst); | 828       __ vstr(temp, dst); | 
| 829     } | 829     } | 
| 830   } else if (source->IsDoubleStackSlot()) { | 830   } else if (source->IsDoubleStackSlot()) { | 
| 831     DCHECK(destination->IsDoubleStackSlot()); | 831     DCHECK(destination->IsDoubleStackSlot()); | 
| 832     Register temp_0 = kScratchReg; | 832     Register temp_0 = kScratchReg; | 
| (...skipping 17 matching lines...) Expand all  Loading... | 
| 850 | 850 | 
| 851 void CodeGenerator::AddNopForSmiCodeInlining() { | 851 void CodeGenerator::AddNopForSmiCodeInlining() { | 
| 852   // On 32-bit ARM we do not insert nops for inlined Smi code. | 852   // On 32-bit ARM we do not insert nops for inlined Smi code. | 
| 853 } | 853 } | 
| 854 | 854 | 
| 855 #undef __ | 855 #undef __ | 
| 856 | 856 | 
| 857 }  // namespace compiler | 857 }  // namespace compiler | 
| 858 }  // namespace internal | 858 }  // namespace internal | 
| 859 }  // namespace v8 | 859 }  // namespace v8 | 
| OLD | NEW | 
|---|