src/share/vm/opto/matcher.hpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File 7201026 Sdiff src/share/vm/opto

src/share/vm/opto/matcher.hpp

Print this page




 244   // should generate this one.
 245   static const bool match_rule_supported(int opcode);
 246 
 247   // Used to determine if we have fast l2f conversion
 248   // USII has it, USIII doesn't
 249   static const bool convL2FSupported(void);
 250 
 251   // Vector width in bytes
 252   static const int vector_width_in_bytes(BasicType bt);
 253 
 254   // Limits on vector size (number of elements).
 255   static const int max_vector_size(const BasicType bt);
 256   static const int min_vector_size(const BasicType bt);
 257   static const bool vector_size_supported(const BasicType bt, int size) {
 258     return (Matcher::max_vector_size(bt) >= size &&
 259             Matcher::min_vector_size(bt) <= size);
 260   }
 261 
 262   // Vector ideal reg
 263   static const int vector_ideal_reg(int len);

 264 
 265   // CPU supports misaligned vectors store/load.
 266   static const bool misaligned_vectors_ok();
 267 
 268   // Used to determine a "low complexity" 64-bit constant.  (Zero is simple.)
 269   // The standard of comparison is one (StoreL ConL) vs. two (StoreI ConI).
 270   // Depends on the details of 64-bit constant generation on the CPU.
 271   static const bool isSimpleConstant64(jlong con);
 272 
 273   // These calls are all generated by the ADLC
 274 
 275   // TRUE - grows up, FALSE - grows down (Intel)
 276   virtual bool stack_direction() const;
 277 
 278   // Java-Java calling convention
 279   // (what you use when Java calls Java)
 280 
 281   // Alignment of stack in bytes, standard Intel word alignment is 4.
 282   // Sparc probably wants at least double-word (8).
 283   static uint stack_alignment_in_bytes();




 244   // should generate this one.
 245   static const bool match_rule_supported(int opcode);
 246 
 247   // Used to determine if we have fast l2f conversion
 248   // USII has it, USIII doesn't
 249   static const bool convL2FSupported(void);
 250 
 251   // Vector width in bytes
 252   static const int vector_width_in_bytes(BasicType bt);
 253 
 254   // Limits on vector size (number of elements).
 255   static const int max_vector_size(const BasicType bt);
 256   static const int min_vector_size(const BasicType bt);
 257   static const bool vector_size_supported(const BasicType bt, int size) {
 258     return (Matcher::max_vector_size(bt) >= size &&
 259             Matcher::min_vector_size(bt) <= size);
 260   }
 261 
 262   // Vector ideal reg
 263   static const int vector_ideal_reg(int len);
 264   static const int vector_shift_count_ideal_reg(int len);
 265 
 266   // CPU supports misaligned vectors store/load.
 267   static const bool misaligned_vectors_ok();
 268 
 269   // Used to determine a "low complexity" 64-bit constant.  (Zero is simple.)
 270   // The standard of comparison is one (StoreL ConL) vs. two (StoreI ConI).
 271   // Depends on the details of 64-bit constant generation on the CPU.
 272   static const bool isSimpleConstant64(jlong con);
 273 
 274   // These calls are all generated by the ADLC
 275 
 276   // TRUE - grows up, FALSE - grows down (Intel)
 277   virtual bool stack_direction() const;
 278 
 279   // Java-Java calling convention
 280   // (what you use when Java calls Java)
 281 
 282   // Alignment of stack in bytes, standard Intel word alignment is 4.
 283   // Sparc probably wants at least double-word (8).
 284   static uint stack_alignment_in_bytes();


src/share/vm/opto/matcher.hpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File