Mercurial > hg > graal-jvmci-8
comparison src/share/vm/prims/methodHandles.hpp @ 3905:c26de9aef2ed
7071307: MethodHandle bimorphic inlining should consider the frequency
Reviewed-by: twisti, roland, kvn, iveresov
author | never |
---|---|
date | Fri, 02 Sep 2011 20:58:21 -0700 |
parents | ddd894528dbc |
children | 393f4b789fd0 |
comparison
equal
deleted
inserted
replaced
3902:11a4af030e4b | 3905:c26de9aef2ed |
---|---|
185 _adapter_opt_fold_4_ref, // process N=4 arguments, prepend a reference | 185 _adapter_opt_fold_4_ref, // process N=4 arguments, prepend a reference |
186 _adapter_opt_fold_5_ref, // process N=5 arguments, prepend a reference | 186 _adapter_opt_fold_5_ref, // process N=5 arguments, prepend a reference |
187 _adapter_opt_fold_FIRST = _adapter_opt_fold_ref, | 187 _adapter_opt_fold_FIRST = _adapter_opt_fold_ref, |
188 _adapter_opt_fold_LAST = _adapter_opt_fold_5_ref, | 188 _adapter_opt_fold_LAST = _adapter_opt_fold_5_ref, |
189 | 189 |
190 _adapter_opt_profiling, | |
191 | |
190 _EK_LIMIT, | 192 _EK_LIMIT, |
191 _EK_FIRST = 0 | 193 _EK_FIRST = 0 |
192 }; | 194 }; |
193 | 195 |
194 public: | 196 public: |
264 return _adapter_collect_args; | 266 return _adapter_collect_args; |
265 if (ek >= _adapter_opt_fold_FIRST && ek <= _adapter_opt_fold_LAST) | 267 if (ek >= _adapter_opt_fold_FIRST && ek <= _adapter_opt_fold_LAST) |
266 return _adapter_fold_args; | 268 return _adapter_fold_args; |
267 if (ek >= _adapter_opt_return_FIRST && ek <= _adapter_opt_return_LAST) | 269 if (ek >= _adapter_opt_return_FIRST && ek <= _adapter_opt_return_LAST) |
268 return _adapter_opt_return_any; | 270 return _adapter_opt_return_any; |
271 if (ek == _adapter_opt_profiling) | |
272 return _adapter_retype_only; | |
269 assert(false, "oob"); | 273 assert(false, "oob"); |
270 return _EK_LIMIT; | 274 return _EK_LIMIT; |
271 } | 275 } |
272 | 276 |
273 static bool ek_supported(MethodHandles::EntryKind ek); | 277 static bool ek_supported(MethodHandles::EntryKind ek); |
580 // format of query to getConstant: | 584 // format of query to getConstant: |
581 GC_JVM_PUSH_LIMIT = 0, | 585 GC_JVM_PUSH_LIMIT = 0, |
582 GC_JVM_STACK_MOVE_UNIT = 1, | 586 GC_JVM_STACK_MOVE_UNIT = 1, |
583 GC_CONV_OP_IMPLEMENTED_MASK = 2, | 587 GC_CONV_OP_IMPLEMENTED_MASK = 2, |
584 GC_OP_ROT_ARGS_DOWN_LIMIT_BIAS = 3, | 588 GC_OP_ROT_ARGS_DOWN_LIMIT_BIAS = 3, |
589 GC_COUNT_GWT = 4, | |
585 | 590 |
586 // format of result from getTarget / encode_target: | 591 // format of result from getTarget / encode_target: |
587 ETF_HANDLE_OR_METHOD_NAME = 0, // all available data (immediate MH or method) | 592 ETF_HANDLE_OR_METHOD_NAME = 0, // all available data (immediate MH or method) |
588 ETF_DIRECT_HANDLE = 1, // ultimate method handle (will be a DMH, may be self) | 593 ETF_DIRECT_HANDLE = 1, // ultimate method handle (will be a DMH, may be self) |
589 ETF_METHOD_NAME = 2, // ultimate method as MemberName | 594 ETF_METHOD_NAME = 2, // ultimate method as MemberName |