| OLD | NEW |
| 1 // Copyright 2006-2009 the V8 project authors. All rights reserved. | 1 // Copyright 2006-2009 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 165 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 176 } | 176 } |
| 177 | 177 |
| 178 | 178 |
| 179 void MacroAssembler::Drop(int count, Condition cond) { | 179 void MacroAssembler::Drop(int count, Condition cond) { |
| 180 if (count > 0) { | 180 if (count > 0) { |
| 181 add(sp, sp, Operand(count * kPointerSize), LeaveCC, cond); | 181 add(sp, sp, Operand(count * kPointerSize), LeaveCC, cond); |
| 182 } | 182 } |
| 183 } | 183 } |
| 184 | 184 |
| 185 | 185 |
| 186 void MacroAssembler::Swap(Register reg1, Register reg2, Register scratch) { | 186 void MacroAssembler::Swap(Register reg1, |
| 187 Register reg2, |
| 188 Register scratch, |
| 189 Condition cond) { |
| 187 if (scratch.is(no_reg)) { | 190 if (scratch.is(no_reg)) { |
| 188 eor(reg1, reg1, Operand(reg2)); | 191 eor(reg1, reg1, Operand(reg2), LeaveCC, cond); |
| 189 eor(reg2, reg2, Operand(reg1)); | 192 eor(reg2, reg2, Operand(reg1), LeaveCC, cond); |
| 190 eor(reg1, reg1, Operand(reg2)); | 193 eor(reg1, reg1, Operand(reg2), LeaveCC, cond); |
| 191 } else { | 194 } else { |
| 192 mov(scratch, reg1); | 195 mov(scratch, reg1, LeaveCC, cond); |
| 193 mov(reg1, reg2); | 196 mov(reg1, reg2, LeaveCC, cond); |
| 194 mov(reg2, scratch); | 197 mov(reg2, scratch, LeaveCC, cond); |
| 195 } | 198 } |
| 196 } | 199 } |
| 197 | 200 |
| 198 | 201 |
| 199 void MacroAssembler::Call(Label* target) { | 202 void MacroAssembler::Call(Label* target) { |
| 200 bl(target); | 203 bl(target); |
| 201 } | 204 } |
| 202 | 205 |
| 203 | 206 |
| 204 void MacroAssembler::Move(Register dst, Handle<Object> value) { | 207 void MacroAssembler::Move(Register dst, Handle<Object> value) { |
| (...skipping 1562 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1767 | 1770 |
| 1768 void CodePatcher::Emit(Address addr) { | 1771 void CodePatcher::Emit(Address addr) { |
| 1769 masm()->emit(reinterpret_cast<Instr>(addr)); | 1772 masm()->emit(reinterpret_cast<Instr>(addr)); |
| 1770 } | 1773 } |
| 1771 #endif // ENABLE_DEBUGGER_SUPPORT | 1774 #endif // ENABLE_DEBUGGER_SUPPORT |
| 1772 | 1775 |
| 1773 | 1776 |
| 1774 } } // namespace v8::internal | 1777 } } // namespace v8::internal |
| 1775 | 1778 |
| 1776 #endif // V8_TARGET_ARCH_ARM | 1779 #endif // V8_TARGET_ARCH_ARM |
| OLD | NEW |