< prev index next >

src/share/vm/opto/compile.hpp

Print this page




 135     ciField*        field()         const { return _field; }
 136     const Type*     element()       const { return _element; }
 137     bool            is_rewritable() const { return _is_rewritable; }
 138     bool            is_volatile()   const { return (_field ? _field->is_volatile() : false); }
 139     int             general_index() const { return (_general_index != 0) ? _general_index : _index; }
 140 
 141     void set_rewritable(bool z) { _is_rewritable = z; }
 142     void set_field(ciField* f) {
 143       assert(!_field,"");
 144       _field = f;
 145       if (f->is_final() || f->is_stable()) {
 146         // In the case of @Stable, multiple writes are possible but may be assumed to be no-ops.
 147         _is_rewritable = false;
 148       }
 149     }
 150     void set_element(const Type* e) {
 151       assert(_element == NULL, "");
 152       _element = e;
 153     }
 154 


 155     void print_on(outputStream* st) PRODUCT_RETURN;
 156   };
 157 
 158   enum {
 159     logAliasCacheSize = 6,
 160     AliasCacheSize = (1<<logAliasCacheSize)
 161   };
 162   struct AliasCacheEntry { const TypePtr* _adr_type; int _index; };  // simple duple type
 163   enum {
 164     trapHistLength = MethodData::_trap_hist_limit
 165   };
 166 
 167   // Constant entry of the constant table.
 168   class Constant {
 169   private:
 170     BasicType _type;
 171     union {
 172       jvalue    _value;
 173       Metadata* _metadata;
 174     } _v;




 135     ciField*        field()         const { return _field; }
 136     const Type*     element()       const { return _element; }
 137     bool            is_rewritable() const { return _is_rewritable; }
 138     bool            is_volatile()   const { return (_field ? _field->is_volatile() : false); }
 139     int             general_index() const { return (_general_index != 0) ? _general_index : _index; }
 140 
 141     void set_rewritable(bool z) { _is_rewritable = z; }
 142     void set_field(ciField* f) {
 143       assert(!_field,"");
 144       _field = f;
 145       if (f->is_final() || f->is_stable()) {
 146         // In the case of @Stable, multiple writes are possible but may be assumed to be no-ops.
 147         _is_rewritable = false;
 148       }
 149     }
 150     void set_element(const Type* e) {
 151       assert(_element == NULL, "");
 152       _element = e;
 153     }
 154 
 155     BasicType basic_type() const;
 156 
 157     void print_on(outputStream* st) PRODUCT_RETURN;
 158   };
 159 
 160   enum {
 161     logAliasCacheSize = 6,
 162     AliasCacheSize = (1<<logAliasCacheSize)
 163   };
 164   struct AliasCacheEntry { const TypePtr* _adr_type; int _index; };  // simple duple type
 165   enum {
 166     trapHistLength = MethodData::_trap_hist_limit
 167   };
 168 
 169   // Constant entry of the constant table.
 170   class Constant {
 171   private:
 172     BasicType _type;
 173     union {
 174       jvalue    _value;
 175       Metadata* _metadata;
 176     } _v;


< prev index next >