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 1622 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1633 } | 1633 } |
1634 | 1634 |
1635 | 1635 |
1636 void Assembler::fyl2x() { | 1636 void Assembler::fyl2x() { |
1637 EnsureSpace ensure_space(this); | 1637 EnsureSpace ensure_space(this); |
1638 EMIT(0xD9); | 1638 EMIT(0xD9); |
1639 EMIT(0xF1); | 1639 EMIT(0xF1); |
1640 } | 1640 } |
1641 | 1641 |
1642 | 1642 |
| 1643 void Assembler::f2xm1() { |
| 1644 EnsureSpace ensure_space(this); |
| 1645 EMIT(0xD9); |
| 1646 EMIT(0xF0); |
| 1647 } |
| 1648 |
| 1649 |
| 1650 void Assembler::fscale() { |
| 1651 EnsureSpace ensure_space(this); |
| 1652 EMIT(0xD9); |
| 1653 EMIT(0xFD); |
| 1654 } |
| 1655 |
| 1656 |
| 1657 void Assembler::fninit() { |
| 1658 EnsureSpace ensure_space(this); |
| 1659 EMIT(0xDB); |
| 1660 EMIT(0xE3); |
| 1661 } |
| 1662 |
| 1663 |
1643 void Assembler::fadd(int i) { | 1664 void Assembler::fadd(int i) { |
1644 EnsureSpace ensure_space(this); | 1665 EnsureSpace ensure_space(this); |
1645 emit_farith(0xDC, 0xC0, i); | 1666 emit_farith(0xDC, 0xC0, i); |
1646 } | 1667 } |
1647 | 1668 |
1648 | 1669 |
1649 void Assembler::fsub(int i) { | 1670 void Assembler::fsub(int i) { |
1650 EnsureSpace ensure_space(this); | 1671 EnsureSpace ensure_space(this); |
1651 emit_farith(0xDC, 0xE8, i); | 1672 emit_farith(0xDC, 0xE8, i); |
1652 } | 1673 } |
(...skipping 498 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2151 void Assembler::movd(const Operand& dst, XMMRegister src) { | 2172 void Assembler::movd(const Operand& dst, XMMRegister src) { |
2152 ASSERT(CpuFeatures::IsEnabled(SSE2)); | 2173 ASSERT(CpuFeatures::IsEnabled(SSE2)); |
2153 EnsureSpace ensure_space(this); | 2174 EnsureSpace ensure_space(this); |
2154 EMIT(0x66); | 2175 EMIT(0x66); |
2155 EMIT(0x0F); | 2176 EMIT(0x0F); |
2156 EMIT(0x7E); | 2177 EMIT(0x7E); |
2157 emit_sse_operand(src, dst); | 2178 emit_sse_operand(src, dst); |
2158 } | 2179 } |
2159 | 2180 |
2160 | 2181 |
| 2182 void Assembler::extractps(Register dst, XMMRegister src, byte imm8) { |
| 2183 ASSERT(CpuFeatures::IsSupported(SSE4_1)); |
| 2184 ASSERT(is_uint8(imm8)); |
| 2185 EnsureSpace ensure_space(this); |
| 2186 EMIT(0x66); |
| 2187 EMIT(0x0F); |
| 2188 EMIT(0x3A); |
| 2189 EMIT(0x17); |
| 2190 emit_sse_operand(dst, src); |
| 2191 EMIT(imm8); |
| 2192 } |
| 2193 |
| 2194 |
2161 void Assembler::pand(XMMRegister dst, XMMRegister src) { | 2195 void Assembler::pand(XMMRegister dst, XMMRegister src) { |
2162 ASSERT(CpuFeatures::IsEnabled(SSE2)); | 2196 ASSERT(CpuFeatures::IsEnabled(SSE2)); |
2163 EnsureSpace ensure_space(this); | 2197 EnsureSpace ensure_space(this); |
2164 EMIT(0x66); | 2198 EMIT(0x66); |
2165 EMIT(0x0F); | 2199 EMIT(0x0F); |
2166 EMIT(0xDB); | 2200 EMIT(0xDB); |
2167 emit_sse_operand(dst, src); | 2201 emit_sse_operand(dst, src); |
2168 } | 2202 } |
2169 | 2203 |
2170 | 2204 |
(...skipping 322 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2493 fprintf(coverage_log, "%s\n", file_line); | 2527 fprintf(coverage_log, "%s\n", file_line); |
2494 fflush(coverage_log); | 2528 fflush(coverage_log); |
2495 } | 2529 } |
2496 } | 2530 } |
2497 | 2531 |
2498 #endif | 2532 #endif |
2499 | 2533 |
2500 } } // namespace v8::internal | 2534 } } // namespace v8::internal |
2501 | 2535 |
2502 #endif // V8_TARGET_ARCH_IA32 | 2536 #endif // V8_TARGET_ARCH_IA32 |
OLD | NEW |