Mercurial > hg > truffle
comparison src/share/vm/opto/compile.cpp @ 642:660978a2a31a
6791178: Specialize for zero as the compressed oop vm heap base
Summary: Use zero based compressed oops if java heap is below 32gb and unscaled compressed oops if java heap is below 4gb.
Reviewed-by: never, twisti, jcoomes, coleenp
author | kvn |
---|---|
date | Thu, 12 Mar 2009 10:37:46 -0700 |
parents | 337400e7a5dd |
children | bd441136a5ce |
comparison
equal
deleted
inserted
replaced
641:6af0a709d52b | 642:660978a2a31a |
---|---|
2079 break; | 2079 break; |
2080 } | 2080 } |
2081 | 2081 |
2082 #ifdef _LP64 | 2082 #ifdef _LP64 |
2083 case Op_CastPP: | 2083 case Op_CastPP: |
2084 if (n->in(1)->is_DecodeN() && UseImplicitNullCheckForNarrowOop) { | 2084 if (n->in(1)->is_DecodeN() && Universe::narrow_oop_use_implicit_null_checks()) { |
2085 Compile* C = Compile::current(); | 2085 Compile* C = Compile::current(); |
2086 Node* in1 = n->in(1); | 2086 Node* in1 = n->in(1); |
2087 const Type* t = n->bottom_type(); | 2087 const Type* t = n->bottom_type(); |
2088 Node* new_in1 = in1->clone(); | 2088 Node* new_in1 = in1->clone(); |
2089 new_in1->as_DecodeN()->set_type(t); | 2089 new_in1->as_DecodeN()->set_type(t); |
2134 Node* new_in2 = NULL; | 2134 Node* new_in2 = NULL; |
2135 if (in2->is_DecodeN()) { | 2135 if (in2->is_DecodeN()) { |
2136 new_in2 = in2->in(1); | 2136 new_in2 = in2->in(1); |
2137 } else if (in2->Opcode() == Op_ConP) { | 2137 } else if (in2->Opcode() == Op_ConP) { |
2138 const Type* t = in2->bottom_type(); | 2138 const Type* t = in2->bottom_type(); |
2139 if (t == TypePtr::NULL_PTR && UseImplicitNullCheckForNarrowOop) { | 2139 if (t == TypePtr::NULL_PTR && Universe::narrow_oop_use_implicit_null_checks()) { |
2140 new_in2 = ConNode::make(C, TypeNarrowOop::NULL_PTR); | 2140 new_in2 = ConNode::make(C, TypeNarrowOop::NULL_PTR); |
2141 // | 2141 // |
2142 // This transformation together with CastPP transformation above | 2142 // This transformation together with CastPP transformation above |
2143 // will generated code for implicit NULL checks for compressed oops. | 2143 // will generated code for implicit NULL checks for compressed oops. |
2144 // | 2144 // |