comparison src/share/vm/ci/bcEscapeAnalyzer.cpp @ 17959:42d9a5f06728

8043354: OptimizePtrCompare too aggressive when allocations are present Summary: In bcEscapeAnalyzer update the _allocated_escapes flag if a var escapes the method. Reviewed-by: kvn
author rasbold
date Wed, 21 May 2014 10:54:59 -0700
parents 78bbf4d43a14
children 52b4284cb496 609faa407cfd
comparison
equal deleted inserted replaced
17958:41daa2e6e52d 17959:42d9a5f06728
156 } 156 }
157 } 157 }
158 158
159 void BCEscapeAnalyzer::set_method_escape(ArgumentMap vars) { 159 void BCEscapeAnalyzer::set_method_escape(ArgumentMap vars) {
160 clear_bits(vars, _arg_local); 160 clear_bits(vars, _arg_local);
161 if (vars.contains_allocated()) {
162 _allocated_escapes = true;
163 }
161 } 164 }
162 165
163 void BCEscapeAnalyzer::set_global_escape(ArgumentMap vars, bool merge) { 166 void BCEscapeAnalyzer::set_global_escape(ArgumentMap vars, bool merge) {
164 clear_bits(vars, _arg_local); 167 clear_bits(vars, _arg_local);
165 clear_bits(vars, _arg_stack); 168 clear_bits(vars, _arg_stack);