src/hotspot/cpu/aarch64/interp_masm_aarch64.cpp
changeset 50577 bf7e2684cd0a
parent 50496 6d021f0a2bf8
child 51374 7be0084191ed
equal deleted inserted replaced
50576:374bd919d8fe 50577:bf7e2684cd0a
   965 }
   965 }
   966 
   966 
   967 void InterpreterMacroAssembler::set_mdp_flag_at(Register mdp_in,
   967 void InterpreterMacroAssembler::set_mdp_flag_at(Register mdp_in,
   968                                                 int flag_byte_constant) {
   968                                                 int flag_byte_constant) {
   969   assert(ProfileInterpreter, "must be profiling interpreter");
   969   assert(ProfileInterpreter, "must be profiling interpreter");
   970   int header_offset = in_bytes(DataLayout::header_offset());
   970   int flags_offset = in_bytes(DataLayout::flags_offset());
   971   int header_bits = DataLayout::flag_mask_to_header_mask(flag_byte_constant);
       
   972   // Set the flag
   971   // Set the flag
   973   ldr(rscratch1, Address(mdp_in, header_offset));
   972   ldrb(rscratch1, Address(mdp_in, flags_offset));
   974   orr(rscratch1, rscratch1, header_bits);
   973   orr(rscratch1, rscratch1, flag_byte_constant);
   975   str(rscratch1, Address(mdp_in, header_offset));
   974   strb(rscratch1, Address(mdp_in, flags_offset));
   976 }
   975 }
   977 
   976 
   978 
   977 
   979 void InterpreterMacroAssembler::test_mdp_data_at(Register mdp_in,
   978 void InterpreterMacroAssembler::test_mdp_data_at(Register mdp_in,
   980                                                  int offset,
   979                                                  int offset,