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