src/share/vm/opto/graphKit.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hotspot Sdiff src/share/vm/opto

src/share/vm/opto/graphKit.hpp

Print this page




 854   Node* gen_subtype_check(Node* subklass, Node* superklass) {
 855     MergeMemNode* mem = merged_memory();
 856     Node* ctrl = control();
 857     Node* n = Phase::gen_subtype_check(subklass, superklass, &ctrl, mem, &_gvn);
 858     set_control(ctrl);
 859     return n;
 860   }
 861 
 862   // Exact type check used for predicted calls and casts.
 863   // Rewrites (*casted_receiver) to be casted to the stronger type.
 864   // (Caller is responsible for doing replace_in_map.)
 865   Node* type_check_receiver(Node* receiver, ciKlass* klass, float prob,
 866                             Node* *casted_receiver);
 867 
 868   // implementation of object creation
 869   Node* set_output_for_allocation(AllocateNode* alloc,
 870                                   const TypeOopPtr* oop_type,
 871                                   bool deoptimize_on_exception=false);
 872   Node* get_layout_helper(Node* klass_node, jint& constant_value);
 873   Node* new_instance(Node* klass_node,
 874                      Node* slow_test = NULL,
 875                      Node* *return_size_val = NULL,
 876                      bool deoptimize_on_exception = false);
 877   Node* new_array(Node* klass_node, Node* count_val, int nargs,
 878                   Node* *return_size_val = NULL,
 879                   bool deoptimize_on_exception = false);
 880 
 881   // java.lang.String helpers
 882   Node* load_String_length(Node* ctrl, Node* str);
 883   Node* load_String_value(Node* ctrl, Node* str);
 884   Node* load_String_coder(Node* ctrl, Node* str);
 885   void store_String_value(Node* ctrl, Node* str, Node* value);
 886   void store_String_coder(Node* ctrl, Node* str, Node* value);
 887   Node* capture_memory(const TypePtr* src_type, const TypePtr* dst_type);
 888   Node* compress_string(Node* src, const TypeAryPtr* src_type, Node* dst, Node* count);
 889   void inflate_string(Node* src, Node* dst, const TypeAryPtr* dst_type, Node* count);
 890   void inflate_string_slow(Node* src, Node* dst, Node* start, Node* count);
 891 
 892   // Handy for making control flow
 893   IfNode* create_and_map_if(Node* ctrl, Node* tst, float prob, float cnt) {
 894     IfNode* iff = new IfNode(ctrl, tst, prob, cnt);// New IfNode's




 854   Node* gen_subtype_check(Node* subklass, Node* superklass) {
 855     MergeMemNode* mem = merged_memory();
 856     Node* ctrl = control();
 857     Node* n = Phase::gen_subtype_check(subklass, superklass, &ctrl, mem, &_gvn);
 858     set_control(ctrl);
 859     return n;
 860   }
 861 
 862   // Exact type check used for predicted calls and casts.
 863   // Rewrites (*casted_receiver) to be casted to the stronger type.
 864   // (Caller is responsible for doing replace_in_map.)
 865   Node* type_check_receiver(Node* receiver, ciKlass* klass, float prob,
 866                             Node* *casted_receiver);
 867 
 868   // implementation of object creation
 869   Node* set_output_for_allocation(AllocateNode* alloc,
 870                                   const TypeOopPtr* oop_type,
 871                                   bool deoptimize_on_exception=false);
 872   Node* get_layout_helper(Node* klass_node, jint& constant_value);
 873   Node* new_instance(Node* klass_node,

 874                      Node* *return_size_val = NULL,
 875                      bool deoptimize_on_exception = false);
 876   Node* new_array(Node* klass_node, Node* count_val, int nargs,
 877                   Node* *return_size_val = NULL,
 878                   bool deoptimize_on_exception = false);
 879 
 880   // java.lang.String helpers
 881   Node* load_String_length(Node* ctrl, Node* str);
 882   Node* load_String_value(Node* ctrl, Node* str);
 883   Node* load_String_coder(Node* ctrl, Node* str);
 884   void store_String_value(Node* ctrl, Node* str, Node* value);
 885   void store_String_coder(Node* ctrl, Node* str, Node* value);
 886   Node* capture_memory(const TypePtr* src_type, const TypePtr* dst_type);
 887   Node* compress_string(Node* src, const TypeAryPtr* src_type, Node* dst, Node* count);
 888   void inflate_string(Node* src, Node* dst, const TypeAryPtr* dst_type, Node* count);
 889   void inflate_string_slow(Node* src, Node* dst, Node* start, Node* count);
 890 
 891   // Handy for making control flow
 892   IfNode* create_and_map_if(Node* ctrl, Node* tst, float prob, float cnt) {
 893     IfNode* iff = new IfNode(ctrl, tst, prob, cnt);// New IfNode's


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