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 1596 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1607 | 1607 |
1608 | 1608 |
1609 void Assembler::fistp_s(const Operand& adr) { | 1609 void Assembler::fistp_s(const Operand& adr) { |
1610 EnsureSpace ensure_space(this); | 1610 EnsureSpace ensure_space(this); |
1611 last_pc_ = pc_; | 1611 last_pc_ = pc_; |
1612 EMIT(0xDB); | 1612 EMIT(0xDB); |
1613 emit_operand(ebx, adr); | 1613 emit_operand(ebx, adr); |
1614 } | 1614 } |
1615 | 1615 |
1616 | 1616 |
| 1617 void Assembler::fisttp_d(const Operand& adr) { |
| 1618 EnsureSpace ensure_space(this); |
| 1619 last_pc_ = pc_; |
| 1620 EMIT(0xDD); |
| 1621 emit_operand(ecx, adr); |
| 1622 } |
| 1623 |
| 1624 |
1617 void Assembler::fist_s(const Operand& adr) { | 1625 void Assembler::fist_s(const Operand& adr) { |
1618 EnsureSpace ensure_space(this); | 1626 EnsureSpace ensure_space(this); |
1619 last_pc_ = pc_; | 1627 last_pc_ = pc_; |
1620 EMIT(0xDB); | 1628 EMIT(0xDB); |
1621 emit_operand(edx, adr); | 1629 emit_operand(edx, adr); |
1622 } | 1630 } |
1623 | 1631 |
1624 | 1632 |
1625 void Assembler::fistp_d(const Operand& adr) { | 1633 void Assembler::fistp_d(const Operand& adr) { |
1626 EnsureSpace ensure_space(this); | 1634 EnsureSpace ensure_space(this); |
(...skipping 175 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1802 | 1810 |
1803 | 1811 |
1804 void Assembler::frndint() { | 1812 void Assembler::frndint() { |
1805 EnsureSpace ensure_space(this); | 1813 EnsureSpace ensure_space(this); |
1806 last_pc_ = pc_; | 1814 last_pc_ = pc_; |
1807 EMIT(0xD9); | 1815 EMIT(0xD9); |
1808 EMIT(0xFC); | 1816 EMIT(0xFC); |
1809 } | 1817 } |
1810 | 1818 |
1811 | 1819 |
| 1820 void Assembler::fnclex() { |
| 1821 EnsureSpace ensure_space(this); |
| 1822 last_pc_ = pc_; |
| 1823 EMIT(0xDB); |
| 1824 EMIT(0xE2); |
| 1825 } |
| 1826 |
| 1827 |
1812 void Assembler::sahf() { | 1828 void Assembler::sahf() { |
1813 EnsureSpace ensure_space(this); | 1829 EnsureSpace ensure_space(this); |
1814 last_pc_ = pc_; | 1830 last_pc_ = pc_; |
1815 EMIT(0x9E); | 1831 EMIT(0x9E); |
1816 } | 1832 } |
1817 | 1833 |
1818 | 1834 |
1819 void Assembler::cvttss2si(Register dst, const Operand& src) { | 1835 void Assembler::cvttss2si(Register dst, const Operand& src) { |
1820 ASSERT(CpuFeatures::IsEnabled(CpuFeatures::SSE2)); | 1836 ASSERT(CpuFeatures::IsEnabled(CpuFeatures::SSE2)); |
1821 EnsureSpace ensure_space(this); | 1837 EnsureSpace ensure_space(this); |
(...skipping 320 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2142 ASSERT(bound_label.is_bound()); | 2158 ASSERT(bound_label.is_bound()); |
2143 ASSERT(0 <= position); | 2159 ASSERT(0 <= position); |
2144 ASSERT(position + static_cast<int>(sizeof(uint32_t)) <= pc_offset()); | 2160 ASSERT(position + static_cast<int>(sizeof(uint32_t)) <= pc_offset()); |
2145 ASSERT(long_at(position) == 0); // only initialize once! | 2161 ASSERT(long_at(position) == 0); // only initialize once! |
2146 | 2162 |
2147 uint32_t label_loc = reinterpret_cast<uint32_t>(addr_at(bound_label.pos())); | 2163 uint32_t label_loc = reinterpret_cast<uint32_t>(addr_at(bound_label.pos())); |
2148 long_at_put(position, label_loc); | 2164 long_at_put(position, label_loc); |
2149 } | 2165 } |
2150 | 2166 |
2151 } } // namespace v8::internal | 2167 } } // namespace v8::internal |
OLD | NEW |