OLD | NEW |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 #include "vm/globals.h" | 5 #include "vm/globals.h" |
6 #if defined(TARGET_ARCH_IA32) | 6 #if defined(TARGET_ARCH_IA32) |
7 | 7 |
8 #include "vm/assembler.h" | 8 #include "vm/assembler.h" |
9 #include "vm/code_generator.h" | 9 #include "vm/code_generator.h" |
10 #include "vm/heap.h" | 10 #include "vm/heap.h" |
(...skipping 2182 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2193 | 2193 |
2194 // Restore volatile CPU registers. | 2194 // Restore volatile CPU registers. |
2195 for (intptr_t i = kNumberOfVolatileCpuRegisters - 1; i >= 0; i--) { | 2195 for (intptr_t i = kNumberOfVolatileCpuRegisters - 1; i >= 0; i--) { |
2196 popl(volatile_cpu_registers[i]); | 2196 popl(volatile_cpu_registers[i]); |
2197 } | 2197 } |
2198 | 2198 |
2199 leave(); | 2199 leave(); |
2200 } | 2200 } |
2201 | 2201 |
2202 | 2202 |
2203 void Assembler::CallRuntime(const RuntimeEntry& entry) { | 2203 void Assembler::CallRuntime(const RuntimeEntry& entry, |
2204 entry.Call(this); | 2204 intptr_t argument_count) { |
| 2205 entry.Call(this, argument_count); |
2205 } | 2206 } |
2206 | 2207 |
2207 | 2208 |
2208 void Assembler::Align(int alignment, int offset) { | 2209 void Assembler::Align(int alignment, int offset) { |
2209 ASSERT(Utils::IsPowerOfTwo(alignment)); | 2210 ASSERT(Utils::IsPowerOfTwo(alignment)); |
2210 int pos = offset + buffer_.GetPosition(); | 2211 int pos = offset + buffer_.GetPosition(); |
2211 int mod = pos & (alignment - 1); | 2212 int mod = pos & (alignment - 1); |
2212 if (mod == 0) { | 2213 if (mod == 0) { |
2213 return; | 2214 return; |
2214 } | 2215 } |
(...skipping 272 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2487 | 2488 |
2488 const char* Assembler::FpuRegisterName(FpuRegister reg) { | 2489 const char* Assembler::FpuRegisterName(FpuRegister reg) { |
2489 ASSERT((0 <= reg) && (reg < kNumberOfXmmRegisters)); | 2490 ASSERT((0 <= reg) && (reg < kNumberOfXmmRegisters)); |
2490 return xmm_reg_names[reg]; | 2491 return xmm_reg_names[reg]; |
2491 } | 2492 } |
2492 | 2493 |
2493 | 2494 |
2494 } // namespace dart | 2495 } // namespace dart |
2495 | 2496 |
2496 #endif // defined TARGET_ARCH_IA32 | 2497 #endif // defined TARGET_ARCH_IA32 |
OLD | NEW |