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