< prev index next >

src/hotspot/cpu/ppc/interp_masm_ppc.hpp

Print this page




  65   // Called by shared interpreter generator.
  66   void dispatch_prolog(TosState state, int step = 0);
  67   void dispatch_epilog(TosState state, int step = 0);
  68 
  69   // Super call_VM calls - correspond to MacroAssembler::call_VM(_leaf) calls.
  70   void super_call_VM_leaf(Register thread_cache, address entry_point, Register arg_1);
  71   void super_call_VM(Register thread_cache, Register oop_result, Register last_java_sp,
  72                      address entry_point, Register arg_1, Register arg_2, bool check_exception = true);
  73 
  74   // Generate a subtype check: branch to ok_is_subtype if sub_klass is
  75   // a subtype of super_klass.  Blows registers tmp1, tmp2 and tmp3.
  76   void gen_subtype_check(Register sub_klass, Register super_klass,
  77                          Register tmp1, Register tmp2, Register tmp3, Label &ok_is_subtype);
  78 
  79   // Load object from cpool->resolved_references(index).
  80   void load_resolved_reference_at_index(Register result, Register index, Label *L_handle_null = NULL);
  81 
  82   // load cpool->resolved_klass_at(index)
  83   void load_resolved_klass_at_offset(Register Rcpool, Register Roffset, Register Rklass);
  84 
  85   void load_resolved_method_at_index(int byte_no, Register cache, Register method);
  86 
  87   void load_receiver(Register Rparam_count, Register Rrecv_dst);
  88 
  89   // helpers for expression stack
  90   void pop_i(     Register r = R17_tos);
  91   void pop_ptr(   Register r = R17_tos);
  92   void pop_l(     Register r = R17_tos);
  93   void pop_f(FloatRegister f = F15_ftos);
  94   void pop_d(FloatRegister f = F15_ftos );
  95 
  96   void push_i(     Register r = R17_tos);
  97   void push_ptr(   Register r = R17_tos);
  98   void push_l(     Register r = R17_tos);
  99   void push_f(FloatRegister f = F15_ftos );
 100   void push_d(FloatRegister f = F15_ftos);
 101 
 102   void push_2ptrs(Register first, Register second);
 103 
 104   void move_l_to_d(Register l = R17_tos, FloatRegister d = F15_ftos);
 105   void move_d_to_l(FloatRegister d = F15_ftos, Register l = R17_tos);
 106 




  65   // Called by shared interpreter generator.
  66   void dispatch_prolog(TosState state, int step = 0);
  67   void dispatch_epilog(TosState state, int step = 0);
  68 
  69   // Super call_VM calls - correspond to MacroAssembler::call_VM(_leaf) calls.
  70   void super_call_VM_leaf(Register thread_cache, address entry_point, Register arg_1);
  71   void super_call_VM(Register thread_cache, Register oop_result, Register last_java_sp,
  72                      address entry_point, Register arg_1, Register arg_2, bool check_exception = true);
  73 
  74   // Generate a subtype check: branch to ok_is_subtype if sub_klass is
  75   // a subtype of super_klass.  Blows registers tmp1, tmp2 and tmp3.
  76   void gen_subtype_check(Register sub_klass, Register super_klass,
  77                          Register tmp1, Register tmp2, Register tmp3, Label &ok_is_subtype);
  78 
  79   // Load object from cpool->resolved_references(index).
  80   void load_resolved_reference_at_index(Register result, Register index, Label *L_handle_null = NULL);
  81 
  82   // load cpool->resolved_klass_at(index)
  83   void load_resolved_klass_at_offset(Register Rcpool, Register Roffset, Register Rklass);
  84 


  85   void load_receiver(Register Rparam_count, Register Rrecv_dst);
  86 
  87   // helpers for expression stack
  88   void pop_i(     Register r = R17_tos);
  89   void pop_ptr(   Register r = R17_tos);
  90   void pop_l(     Register r = R17_tos);
  91   void pop_f(FloatRegister f = F15_ftos);
  92   void pop_d(FloatRegister f = F15_ftos );
  93 
  94   void push_i(     Register r = R17_tos);
  95   void push_ptr(   Register r = R17_tos);
  96   void push_l(     Register r = R17_tos);
  97   void push_f(FloatRegister f = F15_ftos );
  98   void push_d(FloatRegister f = F15_ftos);
  99 
 100   void push_2ptrs(Register first, Register second);
 101 
 102   void move_l_to_d(Register l = R17_tos, FloatRegister d = F15_ftos);
 103   void move_d_to_l(FloatRegister d = F15_ftos, Register l = R17_tos);
 104 


< prev index next >