equal
deleted
inserted
replaced
239 #define CCR6 ((ConditionRegister)(CCR6_ConditionRegisterEnumValue)) |
239 #define CCR6 ((ConditionRegister)(CCR6_ConditionRegisterEnumValue)) |
240 #define CCR7 ((ConditionRegister)(CCR7_ConditionRegisterEnumValue)) |
240 #define CCR7 ((ConditionRegister)(CCR7_ConditionRegisterEnumValue)) |
241 |
241 |
242 #endif // DONT_USE_REGISTER_DEFINES |
242 #endif // DONT_USE_REGISTER_DEFINES |
243 |
243 |
|
244 // Forward declaration |
|
245 // Use VectorSRegister as a shortcut. |
|
246 class VectorSRegisterImpl; |
|
247 typedef VectorSRegisterImpl* VectorSRegister; |
244 |
248 |
245 // Use FloatRegister as shortcut |
249 // Use FloatRegister as shortcut |
246 class FloatRegisterImpl; |
250 class FloatRegisterImpl; |
247 typedef FloatRegisterImpl* FloatRegister; |
251 typedef FloatRegisterImpl* FloatRegister; |
248 |
252 |
268 |
272 |
269 // testers |
273 // testers |
270 bool is_valid() const { return (0 <= value() && value() < number_of_registers); } |
274 bool is_valid() const { return (0 <= value() && value() < number_of_registers); } |
271 |
275 |
272 const char* name() const; |
276 const char* name() const; |
|
277 |
|
278 // convert to VSR |
|
279 VectorSRegister to_vsr() const; |
273 }; |
280 }; |
274 |
281 |
275 // The float registers of the PPC architecture |
282 // The float registers of the PPC architecture |
276 CONSTANT_REGISTER_DECLARATION(FloatRegister, fnoreg, (-1)); |
283 CONSTANT_REGISTER_DECLARATION(FloatRegister, fnoreg, (-1)); |
277 |
284 |
395 typedef VectorRegisterImpl* VectorRegister; |
402 typedef VectorRegisterImpl* VectorRegister; |
396 |
403 |
397 inline VectorRegister as_VectorRegister(int encoding) { |
404 inline VectorRegister as_VectorRegister(int encoding) { |
398 return (VectorRegister)(intptr_t)encoding; |
405 return (VectorRegister)(intptr_t)encoding; |
399 } |
406 } |
400 |
|
401 // Forward declaration |
|
402 // Use VectorSRegister as a shortcut. |
|
403 class VectorSRegisterImpl; |
|
404 typedef VectorSRegisterImpl* VectorSRegister; |
|
405 |
407 |
406 // The implementation of vector registers for the Power architecture |
408 // The implementation of vector registers for the Power architecture |
407 class VectorRegisterImpl: public AbstractRegisterImpl { |
409 class VectorRegisterImpl: public AbstractRegisterImpl { |
408 public: |
410 public: |
409 enum { |
411 enum { |