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 #include "src/x64/assembler-x64.h" | 5 #include "src/x64/assembler-x64.h" |
6 | 6 |
7 #include <cstring> | 7 #include <cstring> |
8 | 8 |
9 #if V8_TARGET_ARCH_X64 | 9 #if V8_TARGET_ARCH_X64 |
10 | 10 |
(...skipping 3880 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3891 | 3891 |
3892 void Assembler::vps(byte op, XMMRegister dst, XMMRegister src1, | 3892 void Assembler::vps(byte op, XMMRegister dst, XMMRegister src1, |
3893 XMMRegister src2) { | 3893 XMMRegister src2) { |
3894 DCHECK(IsEnabled(AVX)); | 3894 DCHECK(IsEnabled(AVX)); |
3895 EnsureSpace ensure_space(this); | 3895 EnsureSpace ensure_space(this); |
3896 emit_vex_prefix(dst, src1, src2, kL128, kNone, k0F, kWIG); | 3896 emit_vex_prefix(dst, src1, src2, kL128, kNone, k0F, kWIG); |
3897 emit(op); | 3897 emit(op); |
3898 emit_sse_operand(dst, src2); | 3898 emit_sse_operand(dst, src2); |
3899 } | 3899 } |
3900 | 3900 |
3901 | |
3902 void Assembler::vps(byte op, XMMRegister dst, XMMRegister src1, | 3901 void Assembler::vps(byte op, XMMRegister dst, XMMRegister src1, |
3903 const Operand& src2) { | 3902 const Operand& src2) { |
3904 DCHECK(IsEnabled(AVX)); | 3903 DCHECK(IsEnabled(AVX)); |
3905 EnsureSpace ensure_space(this); | 3904 EnsureSpace ensure_space(this); |
3906 emit_vex_prefix(dst, src1, src2, kL128, kNone, k0F, kWIG); | 3905 emit_vex_prefix(dst, src1, src2, kL128, kNone, k0F, kWIG); |
3907 emit(op); | 3906 emit(op); |
3908 emit_sse_operand(dst, src2); | 3907 emit_sse_operand(dst, src2); |
3909 } | 3908 } |
3910 | 3909 |
| 3910 void Assembler::vps(byte op, const Operand& dst, XMMRegister src1, |
| 3911 XMMRegister src2) { |
| 3912 DCHECK(IsEnabled(AVX)); |
| 3913 EnsureSpace ensure_space(this); |
| 3914 emit_vex_prefix(src2, src1, dst, kL128, kNone, k0F, kWIG); |
| 3915 emit(op); |
| 3916 emit_sse_operand(src2, dst); |
| 3917 } |
3911 | 3918 |
3912 void Assembler::vpd(byte op, XMMRegister dst, XMMRegister src1, | 3919 void Assembler::vpd(byte op, XMMRegister dst, XMMRegister src1, |
3913 XMMRegister src2) { | 3920 XMMRegister src2) { |
3914 DCHECK(IsEnabled(AVX)); | 3921 DCHECK(IsEnabled(AVX)); |
3915 EnsureSpace ensure_space(this); | 3922 EnsureSpace ensure_space(this); |
3916 emit_vex_prefix(dst, src1, src2, kL128, k66, k0F, kWIG); | 3923 emit_vex_prefix(dst, src1, src2, kL128, k66, k0F, kWIG); |
3917 emit(op); | 3924 emit(op); |
3918 emit_sse_operand(dst, src2); | 3925 emit_sse_operand(dst, src2); |
3919 } | 3926 } |
3920 | 3927 |
(...skipping 645 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4566 | 4573 |
4567 bool RelocInfo::IsInConstantPool() { | 4574 bool RelocInfo::IsInConstantPool() { |
4568 return false; | 4575 return false; |
4569 } | 4576 } |
4570 | 4577 |
4571 | 4578 |
4572 } // namespace internal | 4579 } // namespace internal |
4573 } // namespace v8 | 4580 } // namespace v8 |
4574 | 4581 |
4575 #endif // V8_TARGET_ARCH_X64 | 4582 #endif // V8_TARGET_ARCH_X64 |
OLD | NEW |