< prev index next >

src/share/vm/opto/valuetypenode.cpp

Print this page

        

@@ -418,12 +418,14 @@
 }
 
 void ValueTypeNode::pass_klass(Node* n, uint pos, const GraphKit& kit) {
   ciValueKlass* vk = value_klass();
   const TypeKlassPtr* tk = TypeKlassPtr::make(vk);
-  Node* arg = kit.makecon(tk);
-  n->init_req(pos, arg);
+  intptr_t bits = tk->get_con();
+  bits |= 1;
+  Node* klass_tagged = kit.MakeConX(bits);
+  n->init_req(pos, klass_tagged);
 }
 
 uint ValueTypeNode::pass_fields(Node* n, int base_input, const GraphKit& kit, ciValueKlass* base_vk, int base_offset) {
   ciValueKlass* vk = value_klass();
   if (base_vk == NULL) {
< prev index next >