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

Unified Diff: runtime/vm/assembler_x64.h

Issue 12207117: SSE Assembler and Disassembler support (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Review fixes Created 7 years, 10 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
« no previous file with comments | « runtime/vm/assembler_ia32_test.cc ('k') | runtime/vm/assembler_x64.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/assembler_x64.h
diff --git a/runtime/vm/assembler_x64.h b/runtime/vm/assembler_x64.h
index 8c18c6cd7d1859ad74392a8611b8cabef35662ce..f4559547554d8f9523093ba7d3ff698337ae69ee 100644
--- a/runtime/vm/assembler_x64.h
+++ b/runtime/vm/assembler_x64.h
@@ -383,11 +383,40 @@ class Assembler : public ValueObject {
void movaps(XmmRegister dst, XmmRegister src);
+ void movups(const Address& dst, XmmRegister src);
+ void movups(XmmRegister dst, const Address& src);
+
void addsd(XmmRegister dst, XmmRegister src);
void subsd(XmmRegister dst, XmmRegister src);
void mulsd(XmmRegister dst, XmmRegister src);
void divsd(XmmRegister dst, XmmRegister src);
+ void addps(XmmRegister dst, XmmRegister src);
+ void subps(XmmRegister dst, XmmRegister src);
+ void divps(XmmRegister dst, XmmRegister src);
+ void mulps(XmmRegister dst, XmmRegister src);
+ void minps(XmmRegister dst, XmmRegister src);
+ void maxps(XmmRegister dst, XmmRegister src);
+ void andps(XmmRegister dst, XmmRegister src);
+ void andps(XmmRegister dst, const Address& src);
+ void orps(XmmRegister dst, XmmRegister src);
+ void notps(XmmRegister dst);
+ void negateps(XmmRegister dst);
+ void absps(XmmRegister dst);
+ void zerowps(XmmRegister dst);
+ void cmppseq(XmmRegister dst, XmmRegister src);
+ void cmppsneq(XmmRegister dst, XmmRegister src);
+ void cmppslt(XmmRegister dst, XmmRegister src);
+ void cmppsle(XmmRegister dst, XmmRegister src);
+ void cmppsnlt(XmmRegister dst, XmmRegister src);
+ void cmppsnle(XmmRegister dst, XmmRegister src);
+ void sqrtps(XmmRegister dst);
+ void rsqrtps(XmmRegister dst);
+ void reciprocalps(XmmRegister dst);
+
+ void set1ps(XmmRegister dst, Register tmp, const Immediate& imm);
+ void shufps(XmmRegister dst, XmmRegister src, const Immediate& mask);
+
void comisd(XmmRegister a, XmmRegister b);
void cvtsi2sd(XmmRegister a, Register b);
void cvttsd2siq(Register dst, XmmRegister src);
@@ -507,12 +536,16 @@ class Assembler : public ValueObject {
void ret();
void movmskpd(Register dst, XmmRegister src);
+ void movmskps(Register dst, XmmRegister src);
void sqrtsd(XmmRegister dst, XmmRegister src);
void xorpd(XmmRegister dst, const Address& src);
void xorpd(XmmRegister dst, XmmRegister src);
+ void xorps(XmmRegister dst, const Address& src);
+ void xorps(XmmRegister dst, XmmRegister src);
+
void andpd(XmmRegister dst, const Address& src);
void fldl(const Address& src);
« no previous file with comments | « runtime/vm/assembler_ia32_test.cc ('k') | runtime/vm/assembler_x64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698