comparison src/share/vm/compiler/compileBroker.cpp @ 4047:d8cb48376797

7097546: Optimize use of CMOVE instructions Summary: Avoid CMove in a loop if possible. May generate CMove if it could be moved outside a loop. Reviewed-by: never
author kvn
date Wed, 26 Oct 2011 06:08:56 -0700
parents 436b4a3231bf
children 670a74b863fc
comparison
equal deleted inserted replaced
4046:e69a66a1457b 4047:d8cb48376797
1720 // Copy this bit to the enclosing block: 1720 // Copy this bit to the enclosing block:
1721 compilable = ci_env.compilable(); 1721 compilable = ci_env.compilable();
1722 if (PrintCompilation) { 1722 if (PrintCompilation) {
1723 const char* reason = ci_env.failure_reason(); 1723 const char* reason = ci_env.failure_reason();
1724 if (compilable == ciEnv::MethodCompilable_not_at_tier) { 1724 if (compilable == ciEnv::MethodCompilable_not_at_tier) {
1725 tty->print_cr("%3d COMPILE SKIPPED: %s (retry at different tier)", compile_id, reason); 1725 tty->print_cr("%4d COMPILE SKIPPED: %s (retry at different tier)", compile_id, reason);
1726 } else if (compilable == ciEnv::MethodCompilable_never) { 1726 } else if (compilable == ciEnv::MethodCompilable_never) {
1727 tty->print_cr("%3d COMPILE SKIPPED: %s (not retryable)", compile_id, reason); 1727 tty->print_cr("%4d COMPILE SKIPPED: %s (not retryable)", compile_id, reason);
1728 } else if (compilable == ciEnv::MethodCompilable) { 1728 } else if (compilable == ciEnv::MethodCompilable) {
1729 tty->print_cr("%3d COMPILE SKIPPED: %s", compile_id, reason); 1729 tty->print_cr("%4d COMPILE SKIPPED: %s", compile_id, reason);
1730 } 1730 }
1731 } 1731 }
1732 } else { 1732 } else {
1733 task->mark_success(); 1733 task->mark_success();
1734 task->set_num_inlined_bytecodes(ci_env.num_inlined_bytecodes()); 1734 task->set_num_inlined_bytecodes(ci_env.num_inlined_bytecodes());
1740 (methodOop)JNIHandles::resolve(task->method_handle())); 1740 (methodOop)JNIHandles::resolve(task->method_handle()));
1741 1741
1742 DTRACE_METHOD_COMPILE_END_PROBE(compiler(task->comp_level()), method, task->is_success()); 1742 DTRACE_METHOD_COMPILE_END_PROBE(compiler(task->comp_level()), method, task->is_success());
1743 1743
1744 collect_statistics(thread, time, task); 1744 collect_statistics(thread, time, task);
1745
1746 if (PrintCompilation && PrintInlining) {
1747 tty->print("%7d ", (int) tty->time_stamp().milliseconds()); // print timestamp
1748 tty->print("%4d ", compile_id); // print compilation number
1749 tty->print("%s ", (is_osr ? "%" : " "));
1750 tty->print_cr("size: %d time: %d inlined: %d bytes", task->code()->total_size(), time.milliseconds(), task->num_inlined_bytecodes());
1751 }
1745 1752
1746 if (compilable == ciEnv::MethodCompilable_never) { 1753 if (compilable == ciEnv::MethodCompilable_never) {
1747 if (is_osr) { 1754 if (is_osr) {
1748 method->set_not_osr_compilable(); 1755 method->set_not_osr_compilable();
1749 } else { 1756 } else {