428 if (UseLoopSafepoints && target_bci <= bci()) { |
428 if (UseLoopSafepoints && target_bci <= bci()) { |
429 add_safepoint(); |
429 add_safepoint(); |
430 } |
430 } |
431 } |
431 } |
432 |
432 |
|
433 // Return true if the parser should add a loop predicate |
|
434 bool should_add_predicate(int target_bci); |
|
435 // Insert a loop predicate into the graph |
|
436 void add_predicate(); |
|
437 |
433 // Note: Intrinsic generation routines may be found in library_call.cpp. |
438 // Note: Intrinsic generation routines may be found in library_call.cpp. |
434 |
439 |
435 // Helper function to setup Ideal Call nodes |
440 // Helper function to setup Ideal Call nodes |
436 void do_call(); |
441 void do_call(); |
437 |
442 |
489 float branch_prediction(float &cnt, BoolTest::mask btest, int target_bci); |
494 float branch_prediction(float &cnt, BoolTest::mask btest, int target_bci); |
490 bool seems_never_taken(float prob); |
495 bool seems_never_taken(float prob); |
491 |
496 |
492 void do_ifnull(BoolTest::mask btest, Node* c); |
497 void do_ifnull(BoolTest::mask btest, Node* c); |
493 void do_if(BoolTest::mask btest, Node* c); |
498 void do_if(BoolTest::mask btest, Node* c); |
494 void repush_if_args(); |
499 int repush_if_args(); |
495 void adjust_map_after_if(BoolTest::mask btest, Node* c, float prob, |
500 void adjust_map_after_if(BoolTest::mask btest, Node* c, float prob, |
496 Block* path, Block* other_path); |
501 Block* path, Block* other_path); |
497 IfNode* jump_if_fork_int(Node* a, Node* b, BoolTest::mask mask); |
502 IfNode* jump_if_fork_int(Node* a, Node* b, BoolTest::mask mask); |
498 Node* jump_if_join(Node* iffalse, Node* iftrue); |
503 Node* jump_if_join(Node* iffalse, Node* iftrue); |
499 void jump_if_true_fork(IfNode *ifNode, int dest_bci_if_true, int prof_table_index); |
504 void jump_if_true_fork(IfNode *ifNode, int dest_bci_if_true, int prof_table_index); |