hotspot/src/share/vm/opto/library_call.cpp
changeset 35573 e6c6e7a3b036
parent 35548 8d3afe96ffea
child 35581 dd47cf4734f2
--- a/hotspot/src/share/vm/opto/library_call.cpp	Mon Jan 18 08:25:26 2016 +0100
+++ b/hotspot/src/share/vm/opto/library_call.cpp	Mon Jan 18 08:34:14 2016 +0100
@@ -1359,9 +1359,9 @@
   // 'dst_start' points to dst array + scaled offset
   Node* count = NULL;
   if (compress) {
-    count = compress_string(src_start, dst_start, length);
+    count = compress_string(src_start, TypeAryPtr::get_array_body_type(src_elem), dst_start, length);
   } else {
-    inflate_string(src_start, dst_start, length);
+    inflate_string(src_start, dst_start, TypeAryPtr::get_array_body_type(dst_elem), length);
   }
 
   if (alloc != NULL) {
@@ -1587,7 +1587,7 @@
     (void) store_to_memory(control(), adr, ch, T_CHAR, TypeAryPtr::BYTES, MemNode::unordered,
                            false, false, true /* mismatched */);
   } else {
-    ch = make_load(control(), adr, TypeInt::CHAR, T_CHAR, MemNode::unordered,
+    ch = make_load(control(), adr, TypeInt::CHAR, T_CHAR, TypeAryPtr::BYTES, MemNode::unordered,
                    LoadNode::DependsOnlyOnTest, false, false, true /* mismatched */);
     set_result(ch);
   }