OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_IA32_MACRO_ASSEMBLER_IA32_H_ | 5 #ifndef V8_IA32_MACRO_ASSEMBLER_IA32_H_ |
6 #define V8_IA32_MACRO_ASSEMBLER_IA32_H_ | 6 #define V8_IA32_MACRO_ASSEMBLER_IA32_H_ |
7 | 7 |
8 #include "src/assembler.h" | 8 #include "src/assembler.h" |
9 #include "src/bailout-reason.h" | 9 #include "src/bailout-reason.h" |
10 #include "src/frames.h" | 10 #include "src/frames.h" |
(...skipping 734 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
745 void Push(Register src) { push(src); } | 745 void Push(Register src) { push(src); } |
746 void Push(const Operand& src) { push(src); } | 746 void Push(const Operand& src) { push(src); } |
747 void Push(Immediate value) { push(value); } | 747 void Push(Immediate value) { push(value); } |
748 void Pop(Register dst) { pop(dst); } | 748 void Pop(Register dst) { pop(dst); } |
749 void Pop(const Operand& dst) { pop(dst); } | 749 void Pop(const Operand& dst) { pop(dst); } |
750 void PushReturnAddressFrom(Register src) { push(src); } | 750 void PushReturnAddressFrom(Register src) { push(src); } |
751 void PopReturnAddressTo(Register dst) { pop(dst); } | 751 void PopReturnAddressTo(Register dst) { pop(dst); } |
752 | 752 |
753 // Non-SSE2 instructions. | 753 // Non-SSE2 instructions. |
754 void Pextrd(Register dst, XMMRegister src, int8_t imm8); | 754 void Pextrd(Register dst, XMMRegister src, int8_t imm8); |
755 void Pinsrd(XMMRegister dst, Register src, int8_t imm8) { | 755 void Pinsrd(XMMRegister dst, Register src, int8_t imm8, |
756 Pinsrd(dst, Operand(src), imm8); | 756 bool is_64_bits = false) { |
| 757 Pinsrd(dst, Operand(src), imm8, is_64_bits); |
757 } | 758 } |
758 void Pinsrd(XMMRegister dst, const Operand& src, int8_t imm8); | 759 void Pinsrd(XMMRegister dst, const Operand& src, int8_t imm8, |
| 760 bool is_64_bits = false); |
759 | 761 |
760 void Lzcnt(Register dst, Register src) { Lzcnt(dst, Operand(src)); } | 762 void Lzcnt(Register dst, Register src) { Lzcnt(dst, Operand(src)); } |
761 void Lzcnt(Register dst, const Operand& src); | 763 void Lzcnt(Register dst, const Operand& src); |
762 | 764 |
763 void Tzcnt(Register dst, Register src) { Tzcnt(dst, Operand(src)); } | 765 void Tzcnt(Register dst, Register src) { Tzcnt(dst, Operand(src)); } |
764 void Tzcnt(Register dst, const Operand& src); | 766 void Tzcnt(Register dst, const Operand& src); |
765 | 767 |
766 void Popcnt(Register dst, Register src) { Popcnt(dst, Operand(src)); } | 768 void Popcnt(Register dst, Register src) { Popcnt(dst, Operand(src)); } |
767 void Popcnt(Register dst, const Operand& src); | 769 void Popcnt(Register dst, const Operand& src); |
768 | 770 |
(...skipping 206 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
975 inline Operand NativeContextOperand() { | 977 inline Operand NativeContextOperand() { |
976 return ContextOperand(esi, Context::NATIVE_CONTEXT_INDEX); | 978 return ContextOperand(esi, Context::NATIVE_CONTEXT_INDEX); |
977 } | 979 } |
978 | 980 |
979 #define ACCESS_MASM(masm) masm-> | 981 #define ACCESS_MASM(masm) masm-> |
980 | 982 |
981 } // namespace internal | 983 } // namespace internal |
982 } // namespace v8 | 984 } // namespace v8 |
983 | 985 |
984 #endif // V8_IA32_MACRO_ASSEMBLER_IA32_H_ | 986 #endif // V8_IA32_MACRO_ASSEMBLER_IA32_H_ |
OLD | NEW |