Chromium Code Reviews| Index: src/arm/macro-assembler-arm.cc | 
| =================================================================== | 
| --- src/arm/macro-assembler-arm.cc (revision 12502) | 
| +++ src/arm/macro-assembler-arm.cc (working copy) | 
| @@ -3162,6 +3162,22 @@ | 
| } | 
| +void MacroAssembler::VFPCopyFields(Register dst, Register src, int field_count, | 
| + SwVfpRegister first, SwVfpRegister last) { | 
| + ASSERT(CpuFeatures::IsEnabled(VFP2)); | 
| + ASSERT_LE(first.code(), last.code()); | 
| 
 
danno
2012/10/29 15:29:24
In debug mode, can you please actually verify in g
 
 | 
| + int available_words = last.code() - first.code() + 1; | 
| + | 
| + while (field_count > 0) { | 
| + int words_to_copy = Min(field_count, available_words); | 
| + SwVfpRegister copy_last = | 
| + SwVfpRegister::from_code(first.code() + words_to_copy - 1); | 
| + vldm(ia_w, src, first, copy_last); | 
| + vstm(ia_w, dst, first, copy_last); | 
| + field_count -= words_to_copy; | 
| + } | 
| +} | 
| + | 
| void MacroAssembler::CopyBytes(Register src, | 
| Register dst, | 
| Register length, |