comparison src/share/vm/ci/bcEscapeAnalyzer.hpp @ 78:e1e86702e43e

6680665: bytecode Escape Analyzer produces incorrect escape information for methods without oop arguments Summary: bcEscapeAnalyzer does not analyze methods with no oop arguments. Reviewed-by: rasbold
author kvn
date Fri, 28 Mar 2008 11:52:29 -0700
parents 48a3fa21394b
children d1605aabd0a1
comparison
equal deleted inserted replaced
77:36cd3cc4d27b 78:e1e86702e43e
48 BitMap _dirty; 48 BitMap _dirty;
49 enum{ ARG_OFFSET_MAX = 31}; 49 enum{ ARG_OFFSET_MAX = 31};
50 uint *_arg_modified; 50 uint *_arg_modified;
51 51
52 bool _return_local; 52 bool _return_local;
53 bool _return_allocated;
53 bool _allocated_escapes; 54 bool _allocated_escapes;
54 bool _unknown_modified; 55 bool _unknown_modified;
55 bool _return_allocated;
56 56
57 ciObjectList _dependencies; 57 ciObjectList _dependencies;
58 58
59 ciMethodBlocks *_methodBlocks; 59 ciMethodBlocks *_methodBlocks;
60 60
151 void set_arg_modified(int arg, int offset, int size_in_bytes); 151 void set_arg_modified(int arg, int offset, int size_in_bytes);
152 bool has_non_arg_side_affects() { return _unknown_modified; } 152 bool has_non_arg_side_affects() { return _unknown_modified; }
153 153
154 // Copy dependencies from this analysis into "deps" 154 // Copy dependencies from this analysis into "deps"
155 void copy_dependencies(Dependencies *deps); 155 void copy_dependencies(Dependencies *deps);
156
157 #ifndef PRODUCT
158 // dump escape information
159 void dump();
160 #endif
156 }; 161 };