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

Unified Diff: runtime/vm/assembler_x64.h

Issue 648613006: Implement bigint absAdd, absSub, mulAdd, sqrAdd, estQuotientDigit intrinsics, (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 6 years, 2 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
===================================================================
--- runtime/vm/assembler_x64.h (revision 41048)
+++ runtime/vm/assembler_x64.h (working copy)
@@ -546,26 +546,29 @@
void XorImmediate(Register dst, const Immediate& imm, Register pp);
void addl(Register dst, Register src);
- void addl(const Address& address, const Immediate& imm);
+ void addl(Register dst, const Address& address);
+ void addl(const Address& address, Register src);
+ void adcl(Register dst, Register src);
+ void adcl(Register dst, const Immediate& imm);
+ void adcl(Register dst, const Address& address);
void addq(Register dst, Register src);
- void addq(Register reg, const Immediate& imm);
- void addq(Register reg, const Address& address);
+ void addq(Register dst, const Immediate& imm);
+ void addq(Register dst, const Address& address);
void addq(const Address& address, const Immediate& imm);
- void addq(const Address& address, Register reg);
+ void addq(const Address& address, Register src);
- void adcl(Register dst, Register src);
-
- void subl(Register dst, Register src);
-
void cdq();
void cqo();
void idivl(Register reg);
+ void divl(Register reg);
+
void idivq(Register reg);
void imull(Register dst, Register src);
void imull(Register reg, const Immediate& imm);
+ void mull(Register reg);
void imulq(Register dst, Register src);
void imulq(Register dst, const Address& address);
@@ -572,6 +575,12 @@
void imulq(Register dst, const Immediate& imm);
void MulImmediate(Register reg, const Immediate& imm, Register pp);
+ void subl(Register dst, Register src);
+ void subl(Register dst, const Address& address);
+ void sbbl(Register dst, Register src);
+ void sbbl(Register dst, const Immediate& imm);
+ void sbbl(Register dst, const Address& address);
+
void subq(Register dst, Register src);
void subq(Register reg, const Immediate& imm);
void subq(Register reg, const Address& address);
@@ -584,6 +593,7 @@
void shrl(Register operand, Register shifter);
void sarl(Register reg, const Immediate& imm);
void sarl(Register operand, Register shifter);
+ void shldl(Register dst, Register src, const Immediate& imm);
void shlq(Register reg, const Immediate& imm);
void shlq(Register operand, Register shifter);
@@ -1033,7 +1043,6 @@
inline void EmitInt64(int64_t value);
inline void EmitRegisterREX(Register reg, uint8_t rex);
- inline void EmitRegisterOperand(int rm, int reg);
inline void EmitOperandREX(int rm, const Operand& operand, uint8_t rex);
inline void EmitXmmRegisterOperand(int rm, XmmRegister reg);
inline void EmitFixup(AssemblerFixup* fixup);
« 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