| OLD | NEW |
| 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 // | 4 // |
| 5 // This is forked from Dart revision df52deea9f25690eb8b66c5995da92b70f7ac1fe | 5 // This is forked from Dart revision df52deea9f25690eb8b66c5995da92b70f7ac1fe |
| 6 // Please update the (git) revision if we merge changes from Dart. | 6 // Please update the (git) revision if we merge changes from Dart. |
| 7 // https://code.google.com/p/dart/wiki/GettingTheSource | 7 // https://code.google.com/p/dart/wiki/GettingTheSource |
| 8 | 8 |
| 9 #ifndef VM_ASSEMBLER_ARM_H_ | 9 #ifndef VM_ASSEMBLER_ARM_H_ |
| 10 #define VM_ASSEMBLER_ARM_H_ | 10 #define VM_ASSEMBLER_ARM_H_ |
| (...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 140 } | 140 } |
| 141 | 141 |
| 142 #if 0 | 142 #if 0 |
| 143 // Moved to decodeOperand() in IceAssemblerARM32.cpp | 143 // Moved to decodeOperand() in IceAssemblerARM32.cpp |
| 144 // Data-processing operands - Rotated immediate. | 144 // Data-processing operands - Rotated immediate. |
| 145 Operand(uint32_t rotate, uint32_t immed8) { | 145 Operand(uint32_t rotate, uint32_t immed8) { |
| 146 ASSERT((rotate < (1 << kRotateBits)) && (immed8 < (1 << kImmed8Bits))); | 146 ASSERT((rotate < (1 << kRotateBits)) && (immed8 < (1 << kImmed8Bits))); |
| 147 type_ = 1; | 147 type_ = 1; |
| 148 encoding_ = (rotate << kRotateShift) | (immed8 << kImmed8Shift); | 148 encoding_ = (rotate << kRotateShift) | (immed8 << kImmed8Shift); |
| 149 } | 149 } |
| 150 #endif | |
| 151 | 150 |
| 152 #if 0 | |
| 153 // Moved to decodeOperand() in IceAssemblerARM32.cpp | 151 // Moved to decodeOperand() in IceAssemblerARM32.cpp |
| 154 // Data-processing operands - Register. | 152 // Data-processing operands - Register. |
| 155 explicit Operand(Register rm) { | 153 explicit Operand(Register rm) { |
| 156 type_ = 0; | 154 type_ = 0; |
| 157 encoding_ = static_cast<uint32_t>(rm); | 155 encoding_ = static_cast<uint32_t>(rm); |
| 158 } | 156 } |
| 159 #endif | |
| 160 | 157 |
| 161 #if 0 | |
| 162 // Moved to encodeShiftRotateImm5() | 158 // Moved to encodeShiftRotateImm5() |
| 163 // Data-processing operands - Logical shift/rotate by immediate. | 159 // Data-processing operands - Logical shift/rotate by immediate. |
| 164 Operand(Register rm, Shift shift, uint32_t shift_imm) { | 160 Operand(Register rm, Shift shift, uint32_t shift_imm) { |
| 165 ASSERT(shift_imm < (1 << kShiftImmBits)); | 161 ASSERT(shift_imm < (1 << kShiftImmBits)); |
| 166 type_ = 0; | 162 type_ = 0; |
| 167 encoding_ = shift_imm << kShiftImmShift | | 163 encoding_ = shift_imm << kShiftImmShift | |
| 168 static_cast<uint32_t>(shift) << kShiftShift | | 164 static_cast<uint32_t>(shift) << kShiftShift | |
| 169 static_cast<uint32_t>(rm); | 165 static_cast<uint32_t>(rm); |
| 170 } | 166 } |
| 171 #endif | 167 #endif |
| (...skipping 942 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1114 | 1110 |
| 1115 #if 0 | 1111 #if 0 |
| 1116 // Moved to ARM32::AssemblerARM32::emitType01() | 1112 // Moved to ARM32::AssemblerARM32::emitType01() |
| 1117 void EmitType01(Condition cond, | 1113 void EmitType01(Condition cond, |
| 1118 int type, | 1114 int type, |
| 1119 Opcode opcode, | 1115 Opcode opcode, |
| 1120 int set_cc, | 1116 int set_cc, |
| 1121 Register rn, | 1117 Register rn, |
| 1122 Register rd, | 1118 Register rd, |
| 1123 Operand o); | 1119 Operand o); |
| 1124 #endif | |
| 1125 | 1120 |
| 1121 // Moved to ARM32::AssemblerARM32::emitType05() |
| 1126 void EmitType5(Condition cond, int32_t offset, bool link); | 1122 void EmitType5(Condition cond, int32_t offset, bool link); |
| 1127 | 1123 |
| 1128 #if 0 | |
| 1129 // Moved to ARM32::AssemberARM32::emitMemOp() | 1124 // Moved to ARM32::AssemberARM32::emitMemOp() |
| 1130 void EmitMemOp(Condition cond, | 1125 void EmitMemOp(Condition cond, |
| 1131 bool load, | 1126 bool load, |
| 1132 bool byte, | 1127 bool byte, |
| 1133 Register rd, | 1128 Register rd, |
| 1134 Address ad); | 1129 Address ad); |
| 1135 #endif | 1130 #endif |
| 1136 | 1131 |
| 1137 void EmitMemOpAddressMode3(Condition cond, | 1132 void EmitMemOpAddressMode3(Condition cond, |
| 1138 int32_t mode, | 1133 int32_t mode, |
| (...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1207 SRegister sm); | 1202 SRegister sm); |
| 1208 | 1203 |
| 1209 void EmitSIMDqqq(int32_t opcode, OperandSize sz, | 1204 void EmitSIMDqqq(int32_t opcode, OperandSize sz, |
| 1210 QRegister qd, QRegister qn, QRegister qm); | 1205 QRegister qd, QRegister qn, QRegister qm); |
| 1211 | 1206 |
| 1212 void EmitSIMDddd(int32_t opcode, OperandSize sz, | 1207 void EmitSIMDddd(int32_t opcode, OperandSize sz, |
| 1213 DRegister dd, DRegister dn, DRegister dm); | 1208 DRegister dd, DRegister dn, DRegister dm); |
| 1214 | 1209 |
| 1215 void EmitFarBranch(Condition cond, int32_t offset, bool link); | 1210 void EmitFarBranch(Condition cond, int32_t offset, bool link); |
| 1216 void EmitBranch(Condition cond, Label* label, bool link); | 1211 void EmitBranch(Condition cond, Label* label, bool link); |
| 1212 #if 0 |
| 1213 // Moved to ARM32::AssemblerARM32::encodeBranchoffset(). |
| 1217 int32_t EncodeBranchOffset(int32_t offset, int32_t inst); | 1214 int32_t EncodeBranchOffset(int32_t offset, int32_t inst); |
| 1215 // Moved to ARM32::AssemberARM32::decodeBranchOffset(). |
| 1218 static int32_t DecodeBranchOffset(int32_t inst); | 1216 static int32_t DecodeBranchOffset(int32_t inst); |
| 1217 #endif |
| 1219 int32_t EncodeTstOffset(int32_t offset, int32_t inst); | 1218 int32_t EncodeTstOffset(int32_t offset, int32_t inst); |
| 1220 int32_t DecodeTstOffset(int32_t inst); | 1219 int32_t DecodeTstOffset(int32_t inst); |
| 1221 | 1220 |
| 1222 void StoreIntoObjectFilter(Register object, Register value, Label* no_update); | 1221 void StoreIntoObjectFilter(Register object, Register value, Label* no_update); |
| 1223 | 1222 |
| 1224 // Shorter filtering sequence that assumes that value is not a smi. | 1223 // Shorter filtering sequence that assumes that value is not a smi. |
| 1225 void StoreIntoObjectFilterNoSmi(Register object, | 1224 void StoreIntoObjectFilterNoSmi(Register object, |
| 1226 Register value, | 1225 Register value, |
| 1227 Label* no_update); | 1226 Label* no_update); |
| 1228 | 1227 |
| (...skipping 17 matching lines...) Expand all Loading... |
| 1246 Register new_value, | 1245 Register new_value, |
| 1247 FieldContent old_content); | 1246 FieldContent old_content); |
| 1248 | 1247 |
| 1249 DISALLOW_ALLOCATION(); | 1248 DISALLOW_ALLOCATION(); |
| 1250 DISALLOW_COPY_AND_ASSIGN(Assembler); | 1249 DISALLOW_COPY_AND_ASSIGN(Assembler); |
| 1251 }; | 1250 }; |
| 1252 | 1251 |
| 1253 } // namespace dart | 1252 } // namespace dart |
| 1254 | 1253 |
| 1255 #endif // VM_ASSEMBLER_ARM_H_ | 1254 #endif // VM_ASSEMBLER_ARM_H_ |
| OLD | NEW |