< prev index next >

src/hotspot/share/opto/valuetypenode.cpp

Print this page

@@ -1,7 +1,7 @@
 /*
- * Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
  * under the terms of the GNU General Public License version 2 only, as
  * published by the Free Software Foundation.

@@ -533,10 +533,20 @@
     }
   }
   return true;
 }
 
+ValueTypeNode* ValueTypeNode::make_from_returned_oop(GraphKit* kit, Node* oop, ciValueKlass* vk) {
+#ifdef ASSERT  
+  PhaseGVN& gvn = kit->gvn();
+  const TypePtr* oop_type = gvn.type(oop)->is_ptr();
+  assert(!oop_type->maybe_null(), "a ValueType returned to compiled code must never be NULL");
+#endif
+
+  return make_from_oop(kit, oop, vk, /* buffer_check */ false, /* null2default */ false, /* trap_bci */ -1);
+}
+
 ValueTypeNode* ValueTypeNode::make_from_oop(GraphKit* kit, Node* oop, ciValueKlass* vk, bool buffer_check, bool null2default, int trap_bci) {
   PhaseGVN& gvn = kit->gvn();
   const TypePtr* oop_type = gvn.type(oop)->is_ptr();
   bool null_check = oop_type->maybe_null();
 
< prev index next >