src/hotspot/cpu/aarch64/macroAssembler_aarch64.hpp
changeset 49481 8d02d496e785
parent 49161 8f1bc5a0d16d
child 49724 bf7f42f2f025
equal deleted inserted replaced
49480:d7df2dd501ce 49481:8d02d496e785
    77     bool     check_exceptions          // whether to check for pending exceptions after return
    77     bool     check_exceptions          // whether to check for pending exceptions after return
    78   );
    78   );
    79 
    79 
    80   void call_VM_helper(Register oop_result, address entry_point, int number_of_arguments, bool check_exceptions = true);
    80   void call_VM_helper(Register oop_result, address entry_point, int number_of_arguments, bool check_exceptions = true);
    81 
    81 
    82   // Maximum size of class area in Metaspace when compressed
    82   // True if an XOR can be used to expand narrow klass references.
    83   uint64_t use_XOR_for_compressed_class_base;
    83   bool use_XOR_for_compressed_class_base;
    84 
    84 
    85  public:
    85  public:
    86   MacroAssembler(CodeBuffer* code) : Assembler(code) {
    86   MacroAssembler(CodeBuffer* code) : Assembler(code) {
    87     use_XOR_for_compressed_class_base
    87     use_XOR_for_compressed_class_base
    88       = (operand_valid_for_logical_immediate(false /*is32*/,
    88       = (operand_valid_for_logical_immediate(false /*is32*/,
    89                                              (uint64_t)Universe::narrow_klass_base())
    89                                              (uint64_t)Universe::narrow_klass_base())
    90          && ((uint64_t)Universe::narrow_klass_base()
    90          && ((uint64_t)Universe::narrow_klass_base()
    91              > (1u << log2_intptr(CompressedClassSpaceSize))));
    91              > (1UL << log2_intptr(Universe::narrow_klass_range()))));
    92   }
    92   }
    93 
    93 
    94  // These routines should emit JVMTI PopFrame and ForceEarlyReturn handling code.
    94  // These routines should emit JVMTI PopFrame and ForceEarlyReturn handling code.
    95  // The implementation is only non-empty for the InterpreterMacroAssembler,
    95  // The implementation is only non-empty for the InterpreterMacroAssembler,
    96  // as only the interpreter handles PopFrame and ForceEarlyReturn requests.
    96  // as only the interpreter handles PopFrame and ForceEarlyReturn requests.