409 const Type *t = node->bottom_type(); 410 print_prop("type", (const char *)Type::msg[t->base()]); 411 print_prop("idx", node->_idx); 412 #ifdef ASSERT 413 print_prop("debug_idx", node->_debug_idx); 414 #endif 415 416 if(C->cfg() != NULL) { 417 Block *block = C->cfg()->_bbs[node->_idx]; 418 if(block == NULL) { 419 print_prop("block", C->cfg()->_blocks[0]->_pre_order); 420 } else { 421 print_prop("block", block->_pre_order); 422 } 423 } 424 425 const jushort flags = node->flags(); 426 if (flags & Node::Flag_is_Copy) { 427 print_prop("is_copy", "true"); 428 } 429 if (flags & Node::Flag_is_Call) { 430 print_prop("is_call", "true"); 431 } 432 if (flags & Node::Flag_rematerialize) { 433 print_prop("rematerialize", "true"); 434 } 435 if (flags & Node::Flag_needs_anti_dependence_check) { 436 print_prop("needs_anti_dependence_check", "true"); 437 } 438 if (flags & Node::Flag_is_macro) { 439 print_prop("is_macro", "true"); 440 } 441 if (flags & Node::Flag_is_Con) { 442 print_prop("is_con", "true"); 443 } 444 if (flags & Node::Flag_is_cisc_alternate) { 445 print_prop("is_cisc_alternate", "true"); 446 } 447 if (flags & Node::Flag_is_Branch) { 448 print_prop("is_branch", "true"); 449 } 450 if (flags & Node::Flag_is_block_start) { 451 print_prop("is_block_start", "true"); 452 } 453 if (flags & Node::Flag_is_Goto) { 454 print_prop("is_goto", "true"); 455 } 456 if (flags & Node::Flag_is_dead_loop_safe) { 457 print_prop("is_dead_loop_safe", "true"); 458 } 459 if (flags & Node::Flag_may_be_short_branch) { 460 print_prop("may_be_short_branch", "true"); 461 } 462 if (flags & Node::Flag_is_safepoint_node) { 463 print_prop("is_safepoint_node", "true"); 464 } 465 if (flags & Node::Flag_is_pc_relative) { 466 print_prop("is_pc_relative", "true"); 467 } 468 469 if (C->matcher() != NULL) { 470 if (C->matcher()->is_shared(node)) { 471 print_prop("is_shared", "true"); 472 } else { 473 print_prop("is_shared", "false"); 474 } 475 if (C->matcher()->is_dontcare(node)) { 476 print_prop("is_dontcare", "true"); 477 } else { 478 print_prop("is_dontcare", "false"); 479 } 480 481 #ifdef ASSERT 482 Node* old = C->matcher()->find_old_node(node); 483 if (old != NULL) { 484 print_prop("old_node_idx", old->_idx); 485 } 486 #endif 487 } | 409 const Type *t = node->bottom_type(); 410 print_prop("type", (const char *)Type::msg[t->base()]); 411 print_prop("idx", node->_idx); 412 #ifdef ASSERT 413 print_prop("debug_idx", node->_debug_idx); 414 #endif 415 416 if(C->cfg() != NULL) { 417 Block *block = C->cfg()->_bbs[node->_idx]; 418 if(block == NULL) { 419 print_prop("block", C->cfg()->_blocks[0]->_pre_order); 420 } else { 421 print_prop("block", block->_pre_order); 422 } 423 } 424 425 const jushort flags = node->flags(); 426 if (flags & Node::Flag_is_Copy) { 427 print_prop("is_copy", "true"); 428 } 429 if (flags & Node::Flag_rematerialize) { 430 print_prop("rematerialize", "true"); 431 } 432 if (flags & Node::Flag_needs_anti_dependence_check) { 433 print_prop("needs_anti_dependence_check", "true"); 434 } 435 if (flags & Node::Flag_is_macro) { 436 print_prop("is_macro", "true"); 437 } 438 if (flags & Node::Flag_is_Con) { 439 print_prop("is_con", "true"); 440 } 441 if (flags & Node::Flag_is_cisc_alternate) { 442 print_prop("is_cisc_alternate", "true"); 443 } 444 if (flags & Node::Flag_is_Branch) { 445 print_prop("is_branch", "true"); 446 } 447 if (flags & Node::Flag_is_dead_loop_safe) { 448 print_prop("is_dead_loop_safe", "true"); 449 } 450 if (flags & Node::Flag_may_be_short_branch) { 451 print_prop("may_be_short_branch", "true"); 452 } 453 454 if (C->matcher() != NULL) { 455 if (C->matcher()->is_shared(node)) { 456 print_prop("is_shared", "true"); 457 } else { 458 print_prop("is_shared", "false"); 459 } 460 if (C->matcher()->is_dontcare(node)) { 461 print_prop("is_dontcare", "true"); 462 } else { 463 print_prop("is_dontcare", "false"); 464 } 465 466 #ifdef ASSERT 467 Node* old = C->matcher()->find_old_node(node); 468 if (old != NULL) { 469 print_prop("old_node_idx", old->_idx); 470 } 471 #endif 472 } |