862 Node* new_array(Node* klass_node, Node* count_val, int nargs, |
862 Node* new_array(Node* klass_node, Node* count_val, int nargs, |
863 Node* *return_size_val = NULL, |
863 Node* *return_size_val = NULL, |
864 bool deoptimize_on_exception = false); |
864 bool deoptimize_on_exception = false); |
865 |
865 |
866 // java.lang.String helpers |
866 // java.lang.String helpers |
867 Node* load_String_offset(Node* ctrl, Node* str); |
|
868 Node* load_String_length(Node* ctrl, Node* str); |
867 Node* load_String_length(Node* ctrl, Node* str); |
869 Node* load_String_value(Node* ctrl, Node* str); |
868 Node* load_String_value(Node* ctrl, Node* str); |
870 void store_String_offset(Node* ctrl, Node* str, Node* value); |
869 Node* load_String_coder(Node* ctrl, Node* str); |
871 void store_String_length(Node* ctrl, Node* str, Node* value); |
|
872 void store_String_value(Node* ctrl, Node* str, Node* value); |
870 void store_String_value(Node* ctrl, Node* str, Node* value); |
|
871 void store_String_coder(Node* ctrl, Node* str, Node* value); |
|
872 Node* compress_string(Node* src, Node* dst, Node* count); |
|
873 void inflate_string(Node* src, Node* dst, Node* count); |
|
874 void inflate_string_slow(Node* src, Node* dst, Node* start, Node* count); |
873 |
875 |
874 // Handy for making control flow |
876 // Handy for making control flow |
875 IfNode* create_and_map_if(Node* ctrl, Node* tst, float prob, float cnt) { |
877 IfNode* create_and_map_if(Node* ctrl, Node* tst, float prob, float cnt) { |
876 IfNode* iff = new IfNode(ctrl, tst, prob, cnt);// New IfNode's |
878 IfNode* iff = new IfNode(ctrl, tst, prob, cnt);// New IfNode's |
877 _gvn.set_type(iff, iff->Value(&_gvn)); // Value may be known at parse-time |
879 _gvn.set_type(iff, iff->Value(&_gvn)); // Value may be known at parse-time |