Skip to content

Commit

Permalink
8256956: RegisterImpl::max_slots_per_register is incorrect on AMD64
Browse files Browse the repository at this point in the history
Reviewed-by: thartmann, vlivanov
  • Loading branch information
DamonFool committed Nov 26, 2020
1 parent 20020d1 commit b1d1499
Showing 1 changed file with 2 additions and 5 deletions.
7 changes: 2 additions & 5 deletions src/hotspot/cpu/x86/register_x86.hpp
Expand Up @@ -50,7 +50,7 @@ class RegisterImpl: public AbstractRegisterImpl {
#else
number_of_registers = 16,
number_of_byte_registers = 16,
max_slots_per_register = 1
max_slots_per_register = 2
#endif // AMD64
};

Expand Down Expand Up @@ -256,10 +256,7 @@ class ConcreteRegisterImpl : public AbstractRegisterImpl {
// There is no requirement that any ordering here matches any ordering c2 gives
// it's optoregs.

number_of_registers = RegisterImpl::number_of_registers +
#ifdef AMD64
RegisterImpl::number_of_registers + // "H" half of a 64bit register
#endif // AMD64
number_of_registers = RegisterImpl::number_of_registers * RegisterImpl::max_slots_per_register +
2 * FloatRegisterImpl::number_of_registers +
XMMRegisterImpl::max_slots_per_register * XMMRegisterImpl::number_of_registers +
KRegisterImpl::number_of_registers + // mask registers
Expand Down

0 comments on commit b1d1499

Please sign in to comment.