Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(394)

Unified Diff: src/ia32/assembler-ia32.h

Issue 1044793002: [turbofan] Add backend support for float32 operations. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Add MachineOperator unit tests. Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/ia32/assembler-ia32.h
diff --git a/src/ia32/assembler-ia32.h b/src/ia32/assembler-ia32.h
index c5894cceca4ec9cbf9b6421f10dce286f6f8435d..69046e189bc0fa08447f36270200bda02fc9120e 100644
--- a/src/ia32/assembler-ia32.h
+++ b/src/ia32/assembler-ia32.h
@@ -954,12 +954,19 @@ class Assembler : public AssemblerBase {
void mulss(XMMRegister dst, const Operand& src);
void divss(XMMRegister dst, XMMRegister src) { divss(dst, Operand(src)); }
void divss(XMMRegister dst, const Operand& src);
+ void sqrtss(XMMRegister dst, XMMRegister src) { sqrtss(dst, Operand(src)); }
+ void sqrtss(XMMRegister dst, const Operand& src);
void ucomiss(XMMRegister dst, XMMRegister src) { ucomiss(dst, Operand(src)); }
void ucomiss(XMMRegister dst, const Operand& src);
void movaps(XMMRegister dst, XMMRegister src);
void shufps(XMMRegister dst, XMMRegister src, byte imm8);
+ void maxss(XMMRegister dst, XMMRegister src) { maxss(dst, Operand(src)); }
+ void maxss(XMMRegister dst, const Operand& src);
+ void minss(XMMRegister dst, XMMRegister src) { minss(dst, Operand(src)); }
+ void minss(XMMRegister dst, const Operand& src);
+
void andps(XMMRegister dst, const Operand& src);
void andps(XMMRegister dst, XMMRegister src) { andps(dst, Operand(src)); }
void xorps(XMMRegister dst, const Operand& src);
@@ -1269,6 +1276,44 @@ class Assembler : public AssemblerBase {
}
void vsd(byte op, XMMRegister dst, XMMRegister src1, const Operand& src2);
+ void vaddss(XMMRegister dst, XMMRegister src1, XMMRegister src2) {
+ vaddss(dst, src1, Operand(src2));
+ }
+ void vaddss(XMMRegister dst, XMMRegister src1, const Operand& src2) {
+ vss(0x58, dst, src1, src2);
+ }
+ void vsubss(XMMRegister dst, XMMRegister src1, XMMRegister src2) {
+ vsubss(dst, src1, Operand(src2));
+ }
+ void vsubss(XMMRegister dst, XMMRegister src1, const Operand& src2) {
+ vss(0x5c, dst, src1, src2);
+ }
+ void vmulss(XMMRegister dst, XMMRegister src1, XMMRegister src2) {
+ vmulss(dst, src1, Operand(src2));
+ }
+ void vmulss(XMMRegister dst, XMMRegister src1, const Operand& src2) {
+ vss(0x59, dst, src1, src2);
+ }
+ void vdivss(XMMRegister dst, XMMRegister src1, XMMRegister src2) {
+ vdivss(dst, src1, Operand(src2));
+ }
+ void vdivss(XMMRegister dst, XMMRegister src1, const Operand& src2) {
+ vss(0x5e, dst, src1, src2);
+ }
+ void vmaxss(XMMRegister dst, XMMRegister src1, XMMRegister src2) {
+ vmaxss(dst, src1, Operand(src2));
+ }
+ void vmaxss(XMMRegister dst, XMMRegister src1, const Operand& src2) {
+ vss(0x5f, dst, src1, src2);
+ }
+ void vminss(XMMRegister dst, XMMRegister src1, XMMRegister src2) {
+ vminss(dst, src1, Operand(src2));
+ }
+ void vminss(XMMRegister dst, XMMRegister src1, const Operand& src2) {
+ vss(0x5d, dst, src1, src2);
+ }
+ void vss(byte op, XMMRegister dst, XMMRegister src1, const Operand& src2);
+
// Prefetch src position into cache level.
// Level 1, 2 or 3 specifies CPU cache level. Level 0 specifies a
// non-temporal

Powered by Google App Engine
This is Rietveld 408576698