< prev index next >

src/hotspot/share/ci/ciType.hpp

Print this page




  57   bool is_subtype_of(ciType* type);
  58 
  59   // Get the instance of java.lang.Class corresponding to this type.
  60   // There are mirrors for instance, array, and primitive types (incl. void).
  61   virtual ciInstance*    java_mirror();
  62 
  63   // Get the class which "boxes" (or "wraps") values of this type.
  64   // Example:  short is boxed by java.lang.Short, etc.
  65   // Returns self if it is a reference type.
  66   // Returns NULL for void, since null is used in such cases.
  67   ciKlass*  box_klass();
  68 
  69   // Returns true if this is not a klass or array (i.e., not a reference type).
  70   bool is_primitive_type() const            { return basic_type() != T_OBJECT && basic_type() != T_ARRAY; }
  71   int size() const                          { return type2size[basic_type()]; }
  72   bool is_void() const                      { return basic_type() == T_VOID; }
  73   bool is_one_word() const                  { return size() == 1; }
  74   bool is_two_word() const                  { return size() == 2; }
  75 
  76   bool is_vectormask();

  77   bool is_vectorapi_vector();
  78   int vectorapi_vector_size();
  79   BasicType vectorapi_vector_bt();
  80 
  81   // What kind of ciObject is this?
  82   bool is_type() const                      { return true; }
  83   bool is_classless() const                 { return is_primitive_type(); }
  84 
  85   const char* name();
  86   virtual void print_name_on(outputStream* st);
  87   void print_name() {
  88     print_name_on(tty);
  89   }
  90 
  91   static ciType* make(BasicType t);
  92 };
  93 
  94 
  95 // ciReturnAddress
  96 //




  57   bool is_subtype_of(ciType* type);
  58 
  59   // Get the instance of java.lang.Class corresponding to this type.
  60   // There are mirrors for instance, array, and primitive types (incl. void).
  61   virtual ciInstance*    java_mirror();
  62 
  63   // Get the class which "boxes" (or "wraps") values of this type.
  64   // Example:  short is boxed by java.lang.Short, etc.
  65   // Returns self if it is a reference type.
  66   // Returns NULL for void, since null is used in such cases.
  67   ciKlass*  box_klass();
  68 
  69   // Returns true if this is not a klass or array (i.e., not a reference type).
  70   bool is_primitive_type() const            { return basic_type() != T_OBJECT && basic_type() != T_ARRAY; }
  71   int size() const                          { return type2size[basic_type()]; }
  72   bool is_void() const                      { return basic_type() == T_VOID; }
  73   bool is_one_word() const                  { return size() == 1; }
  74   bool is_two_word() const                  { return size() == 2; }
  75 
  76   bool is_vectormask();
  77   bool is_vectorshuffle();
  78   bool is_vectorapi_vector();
  79   int vectorapi_vector_size();
  80   BasicType vectorapi_vector_bt();
  81 
  82   // What kind of ciObject is this?
  83   bool is_type() const                      { return true; }
  84   bool is_classless() const                 { return is_primitive_type(); }
  85 
  86   const char* name();
  87   virtual void print_name_on(outputStream* st);
  88   void print_name() {
  89     print_name_on(tty);
  90   }
  91 
  92   static ciType* make(BasicType t);
  93 };
  94 
  95 
  96 // ciReturnAddress
  97 //


< prev index next >