Index: runtime/vm/assembler_arm.cc |
=================================================================== |
--- runtime/vm/assembler_arm.cc (revision 25188) |
+++ runtime/vm/assembler_arm.cc (working copy) |
@@ -1327,6 +1327,11 @@ |
} |
+void Assembler::vornq(QRegister qd, QRegister qn, QRegister qm) { |
+ EmitSIMDqqq(B21 | B20 | B8 | B4, kByte, qd, qn, qm); |
+} |
+ |
+ |
void Assembler::vdup(OperandSize sz, QRegister qd, DRegister dm, int idx) { |
ASSERT((sz != kDWord) && (sz != kSWord) && (sz != kWordPair)); |
int code = 0; |
@@ -1368,6 +1373,51 @@ |
} |
+void Assembler::vceqqi(OperandSize sz, |
+ QRegister qd, QRegister qn, QRegister qm) { |
+ EmitSIMDqqq(B24 | B11 | B4, sz, qd, qn, qm); |
+} |
+ |
+ |
+void Assembler::vceqqs(QRegister qd, QRegister qn, QRegister qm) { |
+ EmitSIMDqqq(B11 | B10 | B9, kSWord, qd, qn, qm); |
+} |
+ |
+ |
+void Assembler::vcgeqi(OperandSize sz, |
+ QRegister qd, QRegister qn, QRegister qm) { |
+ EmitSIMDqqq(B9 | B8 | B4, sz, qd, qn, qm); |
+} |
+ |
+ |
+void Assembler::vcugeqi(OperandSize sz, |
+ QRegister qd, QRegister qn, QRegister qm) { |
+ EmitSIMDqqq(B24 | B9 | B8 | B4, sz, qd, qn, qm); |
+} |
+ |
+ |
+void Assembler::vcgeqs(QRegister qd, QRegister qn, QRegister qm) { |
+ EmitSIMDqqq(B24 | B11 | B10 | B9, kSWord, qd, qn, qm); |
+} |
+ |
+ |
+void Assembler::vcgtqi(OperandSize sz, |
+ QRegister qd, QRegister qn, QRegister qm) { |
+ EmitSIMDqqq(B9 | B8, sz, qd, qn, qm); |
+} |
+ |
+ |
+void Assembler::vcugtqi(OperandSize sz, |
+ QRegister qd, QRegister qn, QRegister qm) { |
+ EmitSIMDqqq(B24 | B9 | B8, sz, qd, qn, qm); |
+} |
+ |
+ |
+void Assembler::vcgtqs(QRegister qd, QRegister qn, QRegister qm) { |
+ EmitSIMDqqq(B24 | B21 | B11 | B10 | B9, kSWord, qd, qn, qm); |
+} |
+ |
+ |
void Assembler::svc(uint32_t imm24, Condition cond) { |
ASSERT(cond != kNoCondition); |
ASSERT(imm24 < (1 << 24)); |