< prev index next >

hotspot/src/share/vm/opto/compile.cpp

Print this page




2392     TracePhase tp("peephole", &timers[_t_peephole]);
2393     PhasePeephole peep( _regalloc, cfg);
2394     peep.do_transform();
2395   }
2396 
2397   // Do late expand if CPU requires this.
2398   if (Matcher::require_postalloc_expand) {
2399     TracePhase tp("postalloc_expand", &timers[_t_postalloc_expand]);
2400     cfg.postalloc_expand(_regalloc);
2401   }
2402 
2403   // Convert Nodes to instruction bits in a buffer
2404   {
2405     TraceTime tp("output", &timers[_t_output], CITime);
2406     Output();
2407   }
2408 
2409   print_method(PHASE_FINAL_CODE);
2410 
2411   // He's dead, Jim.
2412   _cfg     = (PhaseCFG*)0xdeadbeef;
2413   _regalloc = (PhaseChaitin*)0xdeadbeef;
2414 }
2415 
2416 
2417 //------------------------------dump_asm---------------------------------------
2418 // Dump formatted assembly
2419 #ifndef PRODUCT
2420 void Compile::dump_asm(int *pcs, uint pc_limit) {
2421   bool cut_short = false;
2422   tty->print_cr("#");
2423   tty->print("#  ");  _tf->dump();  tty->cr();
2424   tty->print_cr("#");
2425 
2426   // For all blocks
2427   int pc = 0x0;                 // Program counter
2428   char starts_bundle = ' ';
2429   _regalloc->dump_frame();
2430 
2431   Node *n = NULL;
2432   for (uint i = 0; i < _cfg->number_of_blocks(); i++) {
2433     if (VMThread::should_terminate()) {




2392     TracePhase tp("peephole", &timers[_t_peephole]);
2393     PhasePeephole peep( _regalloc, cfg);
2394     peep.do_transform();
2395   }
2396 
2397   // Do late expand if CPU requires this.
2398   if (Matcher::require_postalloc_expand) {
2399     TracePhase tp("postalloc_expand", &timers[_t_postalloc_expand]);
2400     cfg.postalloc_expand(_regalloc);
2401   }
2402 
2403   // Convert Nodes to instruction bits in a buffer
2404   {
2405     TraceTime tp("output", &timers[_t_output], CITime);
2406     Output();
2407   }
2408 
2409   print_method(PHASE_FINAL_CODE);
2410 
2411   // He's dead, Jim.
2412   _cfg     = (PhaseCFG*)(uintptr_t)0xdeadbeef;
2413   _regalloc = (PhaseChaitin*)(uintptr_t)0xdeadbeef;
2414 }
2415 
2416 
2417 //------------------------------dump_asm---------------------------------------
2418 // Dump formatted assembly
2419 #ifndef PRODUCT
2420 void Compile::dump_asm(int *pcs, uint pc_limit) {
2421   bool cut_short = false;
2422   tty->print_cr("#");
2423   tty->print("#  ");  _tf->dump();  tty->cr();
2424   tty->print_cr("#");
2425 
2426   // For all blocks
2427   int pc = 0x0;                 // Program counter
2428   char starts_bundle = ' ';
2429   _regalloc->dump_frame();
2430 
2431   Node *n = NULL;
2432   for (uint i = 0; i < _cfg->number_of_blocks(); i++) {
2433     if (VMThread::should_terminate()) {


< prev index next >