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

Unified Diff: src/IceAssemblerARM32.h

Issue 1530233004: add RBIT instruction to the ARM integrated assembler. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Update DART source. Created 5 years 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/IceAssemblerARM32.h
diff --git a/src/IceAssemblerARM32.h b/src/IceAssemblerARM32.h
index 6625b0d52e78de2716194b3d19c8dab024721a04..86dbbc5d688a1d1537968a8a33be5a39f8ba3ca0 100644
--- a/src/IceAssemblerARM32.h
+++ b/src/IceAssemblerARM32.h
@@ -262,7 +262,9 @@ public:
// Note: Registers is a bitset, where bit n corresponds to register Rn.
void pushList(const IValueT Registers, CondARM32::Cond Cond);
- void rev(const Operand *OpRd, const Operand *OpSrc, CondARM32::Cond Cond);
+ void rbit(const Operand *OpRd, const Operand *OpRm, CondARM32::Cond Cond);
+
+ void rev(const Operand *OpRd, const Operand *OpRm, CondARM32::Cond Cond);
void rsb(const Operand *OpRd, const Operand *OpRn, const Operand *OpSrc1,
bool SetFlags, CondARM32::Cond Cond);
@@ -381,6 +383,11 @@ private:
bool IsByte, IValueT Rt, IValueT Address,
const char *InstName);
+ // Emit ccccxxxxxxxxxxxxddddxxxxxxxxmmmm where cccc=Cond,
+ // xxxxxxxxxxxx0000xxxxxxxx0000=Opcode, dddd=Rd, and mmmm=Rm.
+ void emitRdRm(CondARM32::Cond Cond, IValueT Opcode, const Operand *OpRd,
+ const Operand *OpRm, const char *InstName);
+
// Emit ldr/ldrb/str/strb instruction with given address.
void emitMemOp(CondARM32::Cond Cond, bool IsLoad, bool IsByte, IValueT Rt,
const Operand *OpAddress, const TargetInfo &TInfo,

Powered by Google App Engine
This is Rietveld 408576698