hotspot/src/cpu/aarch64/vm/register_aarch64.hpp
changeset 29869 f0f6ac2a350d
parent 29183 0cc8699f7372
child 30890 dbbc65d3cd40
equal deleted inserted replaced
29845:38f98cb6b335 29869:f0f6ac2a350d
    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));