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

Side by Side Diff: src/arm/macro-assembler-arm.h

Issue 7276034: ARM: Improve register allocation and constraints (try 2).... (Closed) Base URL: http://v8.googlecode.com/svn/branches/bleeding_edge/
Patch Set: Created 9 years, 5 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 | « src/arm/lithium-codegen-arm.cc ('k') | 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 2011 the V8 project authors. All rights reserved. 1 // Copyright 2011 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 125 matching lines...) Expand 10 before | Expand all | Expand 10 after
136 int width, 136 int width,
137 Condition cond = al); 137 Condition cond = al);
138 void Bfc(Register dst, int lsb, int width, Condition cond = al); 138 void Bfc(Register dst, int lsb, int width, Condition cond = al);
139 void Usat(Register dst, int satpos, const Operand& src, 139 void Usat(Register dst, int satpos, const Operand& src,
140 Condition cond = al); 140 Condition cond = al);
141 141
142 void Call(Label* target); 142 void Call(Label* target);
143 143
144 // Register move. May do nothing if the registers are identical. 144 // Register move. May do nothing if the registers are identical.
145 void Move(Register dst, Handle<Object> value); 145 void Move(Register dst, Handle<Object> value);
146 void Move(Register dst, Register src); 146 void Move(Register dst, Register src, Condition cond = al);
147 void Move(DoubleRegister dst, DoubleRegister src); 147 void Move(DoubleRegister dst, DoubleRegister src);
148 148
149 // Load an object from the root table. 149 // Load an object from the root table.
150 void LoadRoot(Register destination, 150 void LoadRoot(Register destination,
151 Heap::RootListIndex index, 151 Heap::RootListIndex index,
152 Condition cond = al); 152 Condition cond = al);
153 // Store an object to the root table. 153 // Store an object to the root table.
154 void StoreRoot(Register source, 154 void StoreRoot(Register source,
155 Heap::RootListIndex index, 155 Heap::RootListIndex index,
156 Condition cond = al); 156 Condition cond = al);
(...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after
305 // Compare double values and then load the fpscr flags to a register. 305 // Compare double values and then load the fpscr flags to a register.
306 void VFPCompareAndLoadFlags(const DwVfpRegister src1, 306 void VFPCompareAndLoadFlags(const DwVfpRegister src1,
307 const DwVfpRegister src2, 307 const DwVfpRegister src2,
308 const Register fpscr_flags, 308 const Register fpscr_flags,
309 const Condition cond = al); 309 const Condition cond = al);
310 void VFPCompareAndLoadFlags(const DwVfpRegister src1, 310 void VFPCompareAndLoadFlags(const DwVfpRegister src1,
311 const double src2, 311 const double src2,
312 const Register fpscr_flags, 312 const Register fpscr_flags,
313 const Condition cond = al); 313 const Condition cond = al);
314 314
315 void Vmov(const DwVfpRegister dst,
316 const double imm,
317 const Condition cond = al);
318
315 319
316 // --------------------------------------------------------------------------- 320 // ---------------------------------------------------------------------------
317 // Activation frames 321 // Activation frames
318 322
319 void EnterInternalFrame() { EnterFrame(StackFrame::INTERNAL); } 323 void EnterInternalFrame() { EnterFrame(StackFrame::INTERNAL); }
320 void LeaveInternalFrame() { LeaveFrame(StackFrame::INTERNAL); } 324 void LeaveInternalFrame() { LeaveFrame(StackFrame::INTERNAL); }
321 325
322 void EnterConstructFrame() { EnterFrame(StackFrame::CONSTRUCT); } 326 void EnterConstructFrame() { EnterFrame(StackFrame::CONSTRUCT); }
323 void LeaveConstructFrame() { LeaveFrame(StackFrame::CONSTRUCT); } 327 void LeaveConstructFrame() { LeaveFrame(StackFrame::CONSTRUCT); }
324 328
(...skipping 800 matching lines...) Expand 10 before | Expand all | Expand 10 after
1125 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) 1129 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__)
1126 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> 1130 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm->
1127 #else 1131 #else
1128 #define ACCESS_MASM(masm) masm-> 1132 #define ACCESS_MASM(masm) masm->
1129 #endif 1133 #endif
1130 1134
1131 1135
1132 } } // namespace v8::internal 1136 } } // namespace v8::internal
1133 1137
1134 #endif // V8_ARM_MACRO_ASSEMBLER_ARM_H_ 1138 #endif // V8_ARM_MACRO_ASSEMBLER_ARM_H_
OLDNEW
« no previous file with comments | « src/arm/lithium-codegen-arm.cc ('k') | src/arm/macro-assembler-arm.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698