< prev index next >

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

Print this page




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




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


< prev index next >