Mercurial > hg > truffle
comparison src/share/vm/opto/parse1.cpp @ 6843:c3e799c37717
7177003: C1: LogCompilation support
Summary: add LogCompilation support in C1 - both client and tiered mode.
Reviewed-by: twisti, kvn
author | vlivanov |
---|---|
date | Fri, 05 Oct 2012 18:57:10 -0700 |
parents | f13867c41f73 |
children | beebba0acc11 |
comparison
equal
deleted
inserted
replaced
6830:81e878c53615 | 6843:c3e799c37717 |
---|---|
1379 if (log != NULL) { | 1379 if (log != NULL) { |
1380 // Output an optional context marker, to help place actions | 1380 // Output an optional context marker, to help place actions |
1381 // that occur during parsing of this BC. If there is no log | 1381 // that occur during parsing of this BC. If there is no log |
1382 // output until the next context string, this context string | 1382 // output until the next context string, this context string |
1383 // will be silently ignored. | 1383 // will be silently ignored. |
1384 log->context()->reset(); | 1384 log->set_context("bc code='%d' bci='%d'", (int)bc(), bci()); |
1385 log->context()->print_cr("<bc code='%d' bci='%d'/>", (int)bc(), bci()); | |
1386 } | 1385 } |
1387 | 1386 |
1388 if (block()->has_trap_at(bci())) { | 1387 if (block()->has_trap_at(bci())) { |
1389 // We must respect the flow pass's traps, because it will refuse | 1388 // We must respect the flow pass's traps, because it will refuse |
1390 // to produce successors for trapping blocks. | 1389 // to produce successors for trapping blocks. |
1409 | 1408 |
1410 do_exceptions(); | 1409 do_exceptions(); |
1411 | 1410 |
1412 NOT_PRODUCT( parse_histogram()->record_change(); ); | 1411 NOT_PRODUCT( parse_histogram()->record_change(); ); |
1413 | 1412 |
1414 if (log != NULL) log->context()->reset(); // done w/ this one | 1413 if (log != NULL) |
1414 log->clear_context(); // skip marker if nothing was printed | |
1415 | 1415 |
1416 // Fall into next bytecode. Each bytecode normally has 1 sequential | 1416 // Fall into next bytecode. Each bytecode normally has 1 sequential |
1417 // successor which is typically made ready by visiting this bytecode. | 1417 // successor which is typically made ready by visiting this bytecode. |
1418 // If the successor has several predecessors, then it is a merge | 1418 // If the successor has several predecessors, then it is a merge |
1419 // point, starts a new basic block, and is handled like other basic blocks. | 1419 // point, starts a new basic block, and is handled like other basic blocks. |