< prev index next >

src/share/vm/opto/graphKit.hpp

Print this page
rev 11777 : [mq]: gcinterface.patch


 733   // SP when bytecode needs to be reexecuted.
 734   virtual int reexecute_sp() { return sp(); }
 735 
 736   // Report if there were too many traps at the current method and bci.
 737   // Report if a trap was recorded, and/or PerMethodTrapLimit was exceeded.
 738   // If there is no MDO at all, report no trap unless told to assume it.
 739   bool too_many_traps(Deoptimization::DeoptReason reason) {
 740     return C->too_many_traps(method(), bci(), reason);
 741   }
 742 
 743   // Report if there were too many recompiles at the current method and bci.
 744   bool too_many_recompiles(Deoptimization::DeoptReason reason) {
 745     return C->too_many_recompiles(method(), bci(), reason);
 746   }
 747 
 748   // Returns the object (if any) which was created the moment before.
 749   Node* just_allocated_object(Node* current_control);
 750 
 751   static bool use_ReduceInitialCardMarks() {
 752     return (ReduceInitialCardMarks
 753             && Universe::heap()->can_elide_tlab_store_barriers());
 754   }
 755 
 756   // Sync Ideal and Graph kits.
 757   void sync_kit(IdealKit& ideal);
 758   void final_sync(IdealKit& ideal);
 759 
 760   // vanilla/CMS post barrier
 761   void write_barrier_post(Node *store, Node* obj,
 762                           Node* adr,  uint adr_idx, Node* val, bool use_precise);
 763 
 764   // Allow reordering of pre-barrier with oop store and/or post-barrier.
 765   // Used for load_store operations which loads old value.
 766   bool can_move_pre_barrier() const;
 767 
 768   // G1 pre/post barriers
 769   void g1_write_barrier_pre(bool do_load,
 770                             Node* obj,
 771                             Node* adr,
 772                             uint alias_idx,
 773                             Node* val,




 733   // SP when bytecode needs to be reexecuted.
 734   virtual int reexecute_sp() { return sp(); }
 735 
 736   // Report if there were too many traps at the current method and bci.
 737   // Report if a trap was recorded, and/or PerMethodTrapLimit was exceeded.
 738   // If there is no MDO at all, report no trap unless told to assume it.
 739   bool too_many_traps(Deoptimization::DeoptReason reason) {
 740     return C->too_many_traps(method(), bci(), reason);
 741   }
 742 
 743   // Report if there were too many recompiles at the current method and bci.
 744   bool too_many_recompiles(Deoptimization::DeoptReason reason) {
 745     return C->too_many_recompiles(method(), bci(), reason);
 746   }
 747 
 748   // Returns the object (if any) which was created the moment before.
 749   Node* just_allocated_object(Node* current_control);
 750 
 751   static bool use_ReduceInitialCardMarks() {
 752     return (ReduceInitialCardMarks
 753             && GC::gc()->heap()->can_elide_tlab_store_barriers());
 754   }
 755 
 756   // Sync Ideal and Graph kits.
 757   void sync_kit(IdealKit& ideal);
 758   void final_sync(IdealKit& ideal);
 759 
 760   // vanilla/CMS post barrier
 761   void write_barrier_post(Node *store, Node* obj,
 762                           Node* adr,  uint adr_idx, Node* val, bool use_precise);
 763 
 764   // Allow reordering of pre-barrier with oop store and/or post-barrier.
 765   // Used for load_store operations which loads old value.
 766   bool can_move_pre_barrier() const;
 767 
 768   // G1 pre/post barriers
 769   void g1_write_barrier_pre(bool do_load,
 770                             Node* obj,
 771                             Node* adr,
 772                             uint alias_idx,
 773                             Node* val,


< prev index next >