OLD | NEW |
1 // Copyright (c) 1994-2006 Sun Microsystems Inc. | 1 // Copyright (c) 1994-2006 Sun Microsystems Inc. |
2 // All Rights Reserved. | 2 // All Rights Reserved. |
3 // | 3 // |
4 // Redistribution and use in source and binary forms, with or without | 4 // Redistribution and use in source and binary forms, with or without |
5 // modification, are permitted provided that the following conditions | 5 // modification, are permitted provided that the following conditions |
6 // are met: | 6 // are met: |
7 // | 7 // |
8 // - Redistributions of source code must retain the above copyright notice, | 8 // - Redistributions of source code must retain the above copyright notice, |
9 // this list of conditions and the following disclaimer. | 9 // this list of conditions and the following disclaimer. |
10 // | 10 // |
(...skipping 2158 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2169 ASSERT(isolate()->cpu_features()->IsEnabled(SSE2)); | 2169 ASSERT(isolate()->cpu_features()->IsEnabled(SSE2)); |
2170 EnsureSpace ensure_space(this); | 2170 EnsureSpace ensure_space(this); |
2171 last_pc_ = pc_; | 2171 last_pc_ = pc_; |
2172 EMIT(0xF3); | 2172 EMIT(0xF3); |
2173 EMIT(0x0F); | 2173 EMIT(0x0F); |
2174 EMIT(0x5A); | 2174 EMIT(0x5A); |
2175 emit_sse_operand(dst, src); | 2175 emit_sse_operand(dst, src); |
2176 } | 2176 } |
2177 | 2177 |
2178 | 2178 |
| 2179 void Assembler::cvtsd2ss(XMMRegister dst, XMMRegister src) { |
| 2180 ASSERT(isolate()->cpu_features()->IsEnabled(SSE2)); |
| 2181 EnsureSpace ensure_space(this); |
| 2182 last_pc_ = pc_; |
| 2183 EMIT(0xF2); |
| 2184 EMIT(0x0F); |
| 2185 EMIT(0x5A); |
| 2186 emit_sse_operand(dst, src); |
| 2187 } |
| 2188 |
| 2189 |
2179 void Assembler::addsd(XMMRegister dst, XMMRegister src) { | 2190 void Assembler::addsd(XMMRegister dst, XMMRegister src) { |
2180 ASSERT(isolate()->cpu_features()->IsEnabled(SSE2)); | 2191 ASSERT(isolate()->cpu_features()->IsEnabled(SSE2)); |
2181 EnsureSpace ensure_space(this); | 2192 EnsureSpace ensure_space(this); |
2182 last_pc_ = pc_; | 2193 last_pc_ = pc_; |
2183 EMIT(0xF2); | 2194 EMIT(0xF2); |
2184 EMIT(0x0F); | 2195 EMIT(0x0F); |
2185 EMIT(0x58); | 2196 EMIT(0x58); |
2186 emit_sse_operand(dst, src); | 2197 emit_sse_operand(dst, src); |
2187 } | 2198 } |
2188 | 2199 |
(...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2413 ASSERT(isolate()->cpu_features()->IsEnabled(SSE2)); | 2424 ASSERT(isolate()->cpu_features()->IsEnabled(SSE2)); |
2414 EnsureSpace ensure_space(this); | 2425 EnsureSpace ensure_space(this); |
2415 last_pc_ = pc_; | 2426 last_pc_ = pc_; |
2416 EMIT(0xF2); | 2427 EMIT(0xF2); |
2417 EMIT(0x0F); | 2428 EMIT(0x0F); |
2418 EMIT(0x10); | 2429 EMIT(0x10); |
2419 emit_sse_operand(dst, src); | 2430 emit_sse_operand(dst, src); |
2420 } | 2431 } |
2421 | 2432 |
2422 | 2433 |
| 2434 void Assembler::movss(const Operand& dst, XMMRegister src ) { |
| 2435 ASSERT(isolate()->cpu_features()->IsEnabled(SSE2)); |
| 2436 EnsureSpace ensure_space(this); |
| 2437 last_pc_ = pc_; |
| 2438 EMIT(0xF3); // float |
| 2439 EMIT(0x0F); |
| 2440 EMIT(0x11); // store |
| 2441 emit_sse_operand(src, dst); |
| 2442 } |
| 2443 |
| 2444 |
| 2445 void Assembler::movss(XMMRegister dst, const Operand& src) { |
| 2446 ASSERT(isolate()->cpu_features()->IsEnabled(SSE2)); |
| 2447 EnsureSpace ensure_space(this); |
| 2448 last_pc_ = pc_; |
| 2449 EMIT(0xF3); // float |
| 2450 EMIT(0x0F); |
| 2451 EMIT(0x10); // load |
| 2452 emit_sse_operand(dst, src); |
| 2453 } |
| 2454 |
| 2455 |
| 2456 void Assembler::movss(XMMRegister dst, XMMRegister src) { |
| 2457 ASSERT(isolate()->cpu_features()->IsEnabled(SSE2)); |
| 2458 EnsureSpace ensure_space(this); |
| 2459 last_pc_ = pc_; |
| 2460 EMIT(0xF3); |
| 2461 EMIT(0x0F); |
| 2462 EMIT(0x10); |
| 2463 emit_sse_operand(dst, src); |
| 2464 } |
| 2465 |
| 2466 |
2423 void Assembler::movd(XMMRegister dst, const Operand& src) { | 2467 void Assembler::movd(XMMRegister dst, const Operand& src) { |
2424 ASSERT(isolate()->cpu_features()->IsEnabled(SSE2)); | 2468 ASSERT(isolate()->cpu_features()->IsEnabled(SSE2)); |
2425 EnsureSpace ensure_space(this); | 2469 EnsureSpace ensure_space(this); |
2426 last_pc_ = pc_; | 2470 last_pc_ = pc_; |
2427 EMIT(0x66); | 2471 EMIT(0x66); |
2428 EMIT(0x0F); | 2472 EMIT(0x0F); |
2429 EMIT(0x6E); | 2473 EMIT(0x6E); |
2430 emit_sse_operand(dst, src); | 2474 emit_sse_operand(dst, src); |
2431 } | 2475 } |
2432 | 2476 |
(...skipping 358 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2791 fprintf(coverage_log, "%s\n", file_line); | 2835 fprintf(coverage_log, "%s\n", file_line); |
2792 fflush(coverage_log); | 2836 fflush(coverage_log); |
2793 } | 2837 } |
2794 } | 2838 } |
2795 | 2839 |
2796 #endif | 2840 #endif |
2797 | 2841 |
2798 } } // namespace v8::internal | 2842 } } // namespace v8::internal |
2799 | 2843 |
2800 #endif // V8_TARGET_ARCH_IA32 | 2844 #endif // V8_TARGET_ARCH_IA32 |
OLD | NEW |