< prev index next >

src/hotspot/cpu/arm/interp_masm_arm.hpp

Print this page
rev 49916 : 8201786: Modularize interpreter GC barriers: leftovers for ARM32
Reviewed-by: enevill


 127   void get_constant_pool_cache(Register reg)               { get_constant_pool(reg); ldr(reg, Address(reg, ConstantPool::cache_offset_in_bytes())); }
 128   void get_cpool_and_tags(Register cpool, Register tags)   { get_constant_pool(cpool); ldr(tags, Address(cpool, ConstantPool::tags_offset_in_bytes())); }
 129 
 130   // Sets reg. Blows Rtemp.
 131   void get_unsigned_2_byte_index_at_bcp(Register reg, int bcp_offset);
 132 
 133   // Sets index. Blows reg_tmp.
 134   void get_index_at_bcp(Register index, int bcp_offset, Register reg_tmp, size_t index_size = sizeof(u2));
 135   // Sets cache, index.
 136   void get_cache_and_index_at_bcp(Register cache, Register index, int bcp_offset, size_t index_size = sizeof(u2));
 137   void get_cache_and_index_and_bytecode_at_bcp(Register cache, Register index, Register bytecode, int byte_no, int bcp_offset, size_t index_size = sizeof(u2));
 138   // Sets cache. Blows reg_tmp.
 139   void get_cache_entry_pointer_at_bcp(Register cache, Register reg_tmp, int bcp_offset, size_t index_size = sizeof(u2));
 140 
 141   // Load object from cpool->resolved_references(*bcp+1)
 142   void load_resolved_reference_at_index(Register result, Register tmp);
 143 
 144   // load cpool->resolved_klass_at(index); Rtemp is corrupted upon return
 145   void load_resolved_klass_at_offset(Register Rcpool, Register Rindex, Register Rklass);
 146 
 147   void store_check_part1(Register card_table_base);                // Sets card_table_base register.
 148   void store_check_part2(Register obj, Register card_table_base, Register tmp);
 149 
 150   void set_card(Register card_table_base, Address card_table_addr, Register tmp);
 151 
 152   void pop_ptr(Register r);
 153   void pop_i(Register r = R0_tos);
 154 #ifdef AARCH64
 155   void pop_l(Register r = R0_tos);
 156 #else
 157   void pop_l(Register lo = R0_tos_lo, Register hi = R1_tos_hi);
 158 #endif
 159   void pop_f(FloatRegister fd);
 160   void pop_d(FloatRegister fd);
 161 
 162   void push_ptr(Register r);
 163   void push_i(Register r = R0_tos);
 164 #ifdef AARCH64
 165   void push_l(Register r = R0_tos);
 166 #else
 167   void push_l(Register lo = R0_tos_lo, Register hi = R1_tos_hi);
 168 #endif
 169   void push_f();
 170   void push_d();
 171 




 127   void get_constant_pool_cache(Register reg)               { get_constant_pool(reg); ldr(reg, Address(reg, ConstantPool::cache_offset_in_bytes())); }
 128   void get_cpool_and_tags(Register cpool, Register tags)   { get_constant_pool(cpool); ldr(tags, Address(cpool, ConstantPool::tags_offset_in_bytes())); }
 129 
 130   // Sets reg. Blows Rtemp.
 131   void get_unsigned_2_byte_index_at_bcp(Register reg, int bcp_offset);
 132 
 133   // Sets index. Blows reg_tmp.
 134   void get_index_at_bcp(Register index, int bcp_offset, Register reg_tmp, size_t index_size = sizeof(u2));
 135   // Sets cache, index.
 136   void get_cache_and_index_at_bcp(Register cache, Register index, int bcp_offset, size_t index_size = sizeof(u2));
 137   void get_cache_and_index_and_bytecode_at_bcp(Register cache, Register index, Register bytecode, int byte_no, int bcp_offset, size_t index_size = sizeof(u2));
 138   // Sets cache. Blows reg_tmp.
 139   void get_cache_entry_pointer_at_bcp(Register cache, Register reg_tmp, int bcp_offset, size_t index_size = sizeof(u2));
 140 
 141   // Load object from cpool->resolved_references(*bcp+1)
 142   void load_resolved_reference_at_index(Register result, Register tmp);
 143 
 144   // load cpool->resolved_klass_at(index); Rtemp is corrupted upon return
 145   void load_resolved_klass_at_offset(Register Rcpool, Register Rindex, Register Rklass);
 146 





 147   void pop_ptr(Register r);
 148   void pop_i(Register r = R0_tos);
 149 #ifdef AARCH64
 150   void pop_l(Register r = R0_tos);
 151 #else
 152   void pop_l(Register lo = R0_tos_lo, Register hi = R1_tos_hi);
 153 #endif
 154   void pop_f(FloatRegister fd);
 155   void pop_d(FloatRegister fd);
 156 
 157   void push_ptr(Register r);
 158   void push_i(Register r = R0_tos);
 159 #ifdef AARCH64
 160   void push_l(Register r = R0_tos);
 161 #else
 162   void push_l(Register lo = R0_tos_lo, Register hi = R1_tos_hi);
 163 #endif
 164   void push_f();
 165   void push_d();
 166 


< prev index next >