480 void merge_common(Block* target, int pnum);
481 // Helper functions for merging individual cells.
482 PhiNode *ensure_phi( int idx, bool nocreate = false);
483 PhiNode *ensure_memory_phi(int idx, bool nocreate = false);
484 // Helper to merge the current memory state into the given basic block
485 void merge_memory_edges(MergeMemNode* n, int pnum, bool nophi);
486
487 // Parse this bytecode, and alter the Parsers JVM->Node mapping
488 void do_one_bytecode();
489
490 // helper function to generate array store check
491 void array_store_check();
492 // Helper function to generate array load
493 void array_load(BasicType etype);
494 // Helper function to generate array store
495 void array_store(BasicType etype);
496 // Helper function to compute array addressing
497 Node* array_addressing(BasicType type, int vals, const Type*& elemtype);
498
499 void clinit_deopt();
500
501 // Pass current map to exits
502 void return_current(Node* value);
503
504 // Register finalizers on return from Object.<init>
505 void call_register_finalizer();
506
507 // Insert a compiler safepoint into the graph
508 void add_safepoint();
509
510 // Insert a compiler safepoint into the graph, if there is a back-branch.
511 void maybe_add_safepoint(int target_bci) {
512 if (target_bci <= bci()) {
513 add_safepoint();
514 }
515 }
516
517 // Note: Intrinsic generation routines may be found in library_call.cpp.
518
519 // Helper function to setup Ideal Call nodes
|
480 void merge_common(Block* target, int pnum);
481 // Helper functions for merging individual cells.
482 PhiNode *ensure_phi( int idx, bool nocreate = false);
483 PhiNode *ensure_memory_phi(int idx, bool nocreate = false);
484 // Helper to merge the current memory state into the given basic block
485 void merge_memory_edges(MergeMemNode* n, int pnum, bool nophi);
486
487 // Parse this bytecode, and alter the Parsers JVM->Node mapping
488 void do_one_bytecode();
489
490 // helper function to generate array store check
491 void array_store_check();
492 // Helper function to generate array load
493 void array_load(BasicType etype);
494 // Helper function to generate array store
495 void array_store(BasicType etype);
496 // Helper function to compute array addressing
497 Node* array_addressing(BasicType type, int vals, const Type*& elemtype);
498
499 void clinit_deopt();
500 void clinit_barrier_on_inline();
501
502 // Pass current map to exits
503 void return_current(Node* value);
504
505 // Register finalizers on return from Object.<init>
506 void call_register_finalizer();
507
508 // Insert a compiler safepoint into the graph
509 void add_safepoint();
510
511 // Insert a compiler safepoint into the graph, if there is a back-branch.
512 void maybe_add_safepoint(int target_bci) {
513 if (target_bci <= bci()) {
514 add_safepoint();
515 }
516 }
517
518 // Note: Intrinsic generation routines may be found in library_call.cpp.
519
520 // Helper function to setup Ideal Call nodes
|