< prev index next >

src/share/vm/opto/type.hpp

Print this page




 341   virtual bool singleton(void) const;
 342 
 343   // TRUE if type is above the lattice centerline, and is therefore vacuous
 344   virtual bool empty(void) const;
 345 
 346   // Return a hash for this type.  The hash function is public so ConNode
 347   // (constants) can hash on their constant, which is represented by a Type.
 348   virtual int hash() const;
 349 
 350   // Map ideal registers (machine types) to ideal types
 351   static const Type *mreg2type[];
 352 
 353   // Printing, statistics
 354 #ifndef PRODUCT
 355   void         dump_on(outputStream *st) const;
 356   void         dump() const {
 357     dump_on(tty);
 358   }
 359   virtual void dump2( Dict &d, uint depth, outputStream *st ) const;
 360   static  void dump_stats();


 361 #endif
 362   void typerr(const Type *t) const; // Mixing types error
 363 
 364   // Create basic type
 365   static const Type* get_const_basic_type(BasicType type) {
 366     assert((uint)type <= T_CONFLICT && _const_basic_type[type] != NULL, "bad type");
 367     return _const_basic_type[type];
 368   }
 369 
 370   // For two instance arrays of same dimension, return the base element types.
 371   // Otherwise or if the arrays have different dimensions, return NULL.
 372   static void get_arrays_base_elements(const Type *a1, const Type *a2,
 373                                        const TypeInstPtr **e1, const TypeInstPtr **e2);
 374 
 375   // Mapping to the array element's basic type.
 376   BasicType array_element_basic_type() const;
 377 
 378   // Create standard type for a ciType:
 379   static const Type* get_const_type(ciType* type);
 380 




 341   virtual bool singleton(void) const;
 342 
 343   // TRUE if type is above the lattice centerline, and is therefore vacuous
 344   virtual bool empty(void) const;
 345 
 346   // Return a hash for this type.  The hash function is public so ConNode
 347   // (constants) can hash on their constant, which is represented by a Type.
 348   virtual int hash() const;
 349 
 350   // Map ideal registers (machine types) to ideal types
 351   static const Type *mreg2type[];
 352 
 353   // Printing, statistics
 354 #ifndef PRODUCT
 355   void         dump_on(outputStream *st) const;
 356   void         dump() const {
 357     dump_on(tty);
 358   }
 359   virtual void dump2( Dict &d, uint depth, outputStream *st ) const;
 360   static  void dump_stats();
 361 
 362   static const char* str(const Type* t);
 363 #endif
 364   void typerr(const Type *t) const; // Mixing types error
 365 
 366   // Create basic type
 367   static const Type* get_const_basic_type(BasicType type) {
 368     assert((uint)type <= T_CONFLICT && _const_basic_type[type] != NULL, "bad type");
 369     return _const_basic_type[type];
 370   }
 371 
 372   // For two instance arrays of same dimension, return the base element types.
 373   // Otherwise or if the arrays have different dimensions, return NULL.
 374   static void get_arrays_base_elements(const Type *a1, const Type *a2,
 375                                        const TypeInstPtr **e1, const TypeInstPtr **e2);
 376 
 377   // Mapping to the array element's basic type.
 378   BasicType array_element_basic_type() const;
 379 
 380   // Create standard type for a ciType:
 381   static const Type* get_const_type(ciType* type);
 382 


< prev index next >