Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(352)

Side by Side Diff: src/arm/deoptimizer-arm.cc

Issue 12087132: ARM: Add comments to clarify conditionally executed code dealing with d16-d31 (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 7 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | src/arm/macro-assembler-arm.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 993 matching lines...) Expand 10 before | Expand all | Expand 10 after
1004 if (CpuFeatures::IsSupported(VFP2)) { 1004 if (CpuFeatures::IsSupported(VFP2)) {
1005 CpuFeatures::Scope scope(VFP2); 1005 CpuFeatures::Scope scope(VFP2);
1006 // Save all allocatable VFP registers before messing with them. 1006 // Save all allocatable VFP registers before messing with them.
1007 ASSERT(kDoubleRegZero.code() == 14); 1007 ASSERT(kDoubleRegZero.code() == 14);
1008 ASSERT(kScratchDoubleReg.code() == 15); 1008 ASSERT(kScratchDoubleReg.code() == 15);
1009 1009
1010 // Check CPU flags for number of registers, setting the Z condition flag. 1010 // Check CPU flags for number of registers, setting the Z condition flag.
1011 __ CheckFor32DRegs(ip); 1011 __ CheckFor32DRegs(ip);
1012 1012
1013 // Push registers d0-d13, and possibly d16-d31, on the stack. 1013 // Push registers d0-d13, and possibly d16-d31, on the stack.
1014 // If d16-d31 are not pushed, decrease the stack pointer instead.
1014 __ vstm(db_w, sp, d16, d31, ne); 1015 __ vstm(db_w, sp, d16, d31, ne);
1015 __ sub(sp, sp, Operand(16 * kDoubleSize), LeaveCC, eq); 1016 __ sub(sp, sp, Operand(16 * kDoubleSize), LeaveCC, eq);
1016 __ vstm(db_w, sp, d0, d13); 1017 __ vstm(db_w, sp, d0, d13);
1017 } else { 1018 } else {
1018 __ sub(sp, sp, Operand(kDoubleRegsSize)); 1019 __ sub(sp, sp, Operand(kDoubleRegsSize));
1019 } 1020 }
1020 1021
1021 // Push all 16 registers (needed to populate FrameDescription::registers_). 1022 // Push all 16 registers (needed to populate FrameDescription::registers_).
1022 // TODO(1588) Note that using pc with stm is deprecated, so we should perhaps 1023 // TODO(1588) Note that using pc with stm is deprecated, so we should perhaps
1023 // handle this a bit differently. 1024 // handle this a bit differently.
(...skipping 201 matching lines...) Expand 10 before | Expand all | Expand 10 after
1225 __ push(ip); 1226 __ push(ip);
1226 __ b(&done); 1227 __ b(&done);
1227 ASSERT(masm()->pc_offset() - start == table_entry_size_); 1228 ASSERT(masm()->pc_offset() - start == table_entry_size_);
1228 } 1229 }
1229 __ bind(&done); 1230 __ bind(&done);
1230 } 1231 }
1231 1232
1232 #undef __ 1233 #undef __
1233 1234
1234 } } // namespace v8::internal 1235 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « no previous file | src/arm/macro-assembler-arm.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698