< prev index next >

src/share/vm/opto/graphKit.hpp

Print this page




 617                              Node* obj,   // containing obj
 618                              Node* adr,   // actual adress to store val at
 619                              const TypePtr* adr_type,
 620                              Node* val,
 621                              BasicType bt,
 622                              MemNode::MemOrd mo,
 623                              bool mismatched = false);
 624 
 625   // For the few case where the barriers need special help
 626   void pre_barrier(bool do_load, Node* ctl,
 627                    Node* obj, Node* adr, uint adr_idx, Node* val, const TypeOopPtr* val_type,
 628                    Node* pre_val,
 629                    BasicType bt);
 630 
 631   void post_barrier(Node* ctl, Node* store, Node* obj, Node* adr, uint adr_idx,
 632                     Node* val, BasicType bt, bool use_precise);
 633 
 634   // Return addressing for an array element.
 635   Node* array_element_address(Node* ary, Node* idx, BasicType elembt,
 636                               // Optional constraint on the array size:
 637                               const TypeInt* sizetype = NULL);


 638 
 639   // Return a load of array element at idx.
 640   Node* load_array_element(Node* ctl, Node* ary, Node* idx, const TypeAryPtr* arytype);
 641 
 642   //---------------- Dtrace support --------------------
 643   void make_dtrace_method_entry_exit(ciMethod* method, bool is_entry);
 644   void make_dtrace_method_entry(ciMethod* method) {
 645     make_dtrace_method_entry_exit(method, true);
 646   }
 647   void make_dtrace_method_exit(ciMethod* method) {
 648     make_dtrace_method_entry_exit(method, false);
 649   }
 650 
 651   //--------------- stub generation -------------------
 652  public:
 653   void gen_stub(address C_function,
 654                 const char *name,
 655                 int is_fancy_jump,
 656                 bool pass_tls,
 657                 bool return_pc);




 617                              Node* obj,   // containing obj
 618                              Node* adr,   // actual adress to store val at
 619                              const TypePtr* adr_type,
 620                              Node* val,
 621                              BasicType bt,
 622                              MemNode::MemOrd mo,
 623                              bool mismatched = false);
 624 
 625   // For the few case where the barriers need special help
 626   void pre_barrier(bool do_load, Node* ctl,
 627                    Node* obj, Node* adr, uint adr_idx, Node* val, const TypeOopPtr* val_type,
 628                    Node* pre_val,
 629                    BasicType bt);
 630 
 631   void post_barrier(Node* ctl, Node* store, Node* obj, Node* adr, uint adr_idx,
 632                     Node* val, BasicType bt, bool use_precise);
 633 
 634   // Return addressing for an array element.
 635   Node* array_element_address(Node* ary, Node* idx, BasicType elembt,
 636                               // Optional constraint on the array size:
 637                               const TypeInt* sizetype = NULL,
 638                               // Optional control dependency (for example, on range check)
 639                               Node* ctrl = NULL);
 640 
 641   // Return a load of array element at idx.
 642   Node* load_array_element(Node* ctl, Node* ary, Node* idx, const TypeAryPtr* arytype);
 643 
 644   //---------------- Dtrace support --------------------
 645   void make_dtrace_method_entry_exit(ciMethod* method, bool is_entry);
 646   void make_dtrace_method_entry(ciMethod* method) {
 647     make_dtrace_method_entry_exit(method, true);
 648   }
 649   void make_dtrace_method_exit(ciMethod* method) {
 650     make_dtrace_method_entry_exit(method, false);
 651   }
 652 
 653   //--------------- stub generation -------------------
 654  public:
 655   void gen_stub(address C_function,
 656                 const char *name,
 657                 int is_fancy_jump,
 658                 bool pass_tls,
 659                 bool return_pc);


< prev index next >