Mercurial > hg > truffle
comparison src/share/vm/c1/c1_GraphBuilder.hpp @ 12875:d13d7aba8c12
8023657: New type profiling points: arguments to call
Summary: x86 interpreter and c1 type profiling for arguments at calls
Reviewed-by: kvn, twisti
author | roland |
---|---|
date | Wed, 09 Oct 2013 16:32:21 +0200 |
parents | 46f6f063b272 |
children | ce0cc25bc5e2 |
comparison
equal
deleted
inserted
replaced
12874:46ef27bcacb3 | 12875:d13d7aba8c12 |
---|---|
372 void append_unsafe_CAS(ciMethod* callee); | 372 void append_unsafe_CAS(ciMethod* callee); |
373 bool append_unsafe_get_and_set_obj(ciMethod* callee, bool is_add); | 373 bool append_unsafe_get_and_set_obj(ciMethod* callee, bool is_add); |
374 | 374 |
375 void print_inlining(ciMethod* callee, const char* msg = NULL, bool success = true); | 375 void print_inlining(ciMethod* callee, const char* msg = NULL, bool success = true); |
376 | 376 |
377 void profile_call(ciMethod* callee, Value recv, ciKlass* predicted_holder); | 377 void profile_call(ciMethod* callee, Value recv, ciKlass* predicted_holder, Values* obj_args, bool inlined); |
378 void profile_invocation(ciMethod* inlinee, ValueStack* state); | 378 void profile_invocation(ciMethod* inlinee, ValueStack* state); |
379 | 379 |
380 // Shortcuts to profiling control. | 380 // Shortcuts to profiling control. |
381 bool is_profiling() { return _compilation->is_profiling(); } | 381 bool is_profiling() { return _compilation->is_profiling(); } |
382 bool count_invocations() { return _compilation->count_invocations(); } | 382 bool count_invocations() { return _compilation->count_invocations(); } |
384 bool profile_branches() { return _compilation->profile_branches(); } | 384 bool profile_branches() { return _compilation->profile_branches(); } |
385 bool profile_calls() { return _compilation->profile_calls(); } | 385 bool profile_calls() { return _compilation->profile_calls(); } |
386 bool profile_inlined_calls() { return _compilation->profile_inlined_calls(); } | 386 bool profile_inlined_calls() { return _compilation->profile_inlined_calls(); } |
387 bool profile_checkcasts() { return _compilation->profile_checkcasts(); } | 387 bool profile_checkcasts() { return _compilation->profile_checkcasts(); } |
388 | 388 |
389 Values* args_list_for_profiling(int& start, bool may_have_receiver); | |
390 Values* collect_args_for_profiling(Values* args, bool may_have_receiver); | |
391 | |
389 public: | 392 public: |
390 NOT_PRODUCT(void print_stats();) | 393 NOT_PRODUCT(void print_stats();) |
391 | 394 |
392 // initialization | 395 // initialization |
393 static void initialize(); | 396 static void initialize(); |