equal
deleted
inserted
replaced
58 int encoding() const { assert(is_valid(), "invalid register"); return (intptr_t)this; } |
58 int encoding() const { assert(is_valid(), "invalid register"); return (intptr_t)this; } |
59 bool is_valid() const { return 0 <= (intptr_t)this && (intptr_t)this < number_of_registers; } |
59 bool is_valid() const { return 0 <= (intptr_t)this && (intptr_t)this < number_of_registers; } |
60 bool has_byte_register() const { return 0 <= (intptr_t)this && (intptr_t)this < number_of_byte_registers; } |
60 bool has_byte_register() const { return 0 <= (intptr_t)this && (intptr_t)this < number_of_byte_registers; } |
61 const char* name() const; |
61 const char* name() const; |
62 int encoding_nocheck() const { return (intptr_t)this; } |
62 int encoding_nocheck() const { return (intptr_t)this; } |
63 unsigned long bit(bool yes = true) const { return yes << encoding(); } |
63 |
|
64 // Return the bit which represents this register. This is intended |
|
65 // to be ORed into a bitmask: for usage see class RegSet below. |
|
66 unsigned long bit(bool should_set = true) const { return should_set ? 1 << encoding() : 0; } |
64 }; |
67 }; |
65 |
68 |
66 // The integer registers of the aarch64 architecture |
69 // The integer registers of the aarch64 architecture |
67 |
70 |
68 CONSTANT_REGISTER_DECLARATION(Register, noreg, (-1)); |
71 CONSTANT_REGISTER_DECLARATION(Register, noreg, (-1)); |