Skip to content
Permalink
Browse files
8256956: RegisterImpl::max_slots_per_register is incorrect on AMD64
Backport-of: b1d1499
  • Loading branch information
DamonFool authored and John Jiang committed Nov 18, 2021
1 parent 1b4eb43 commit d9b2c4ce6b3e51b887b95a5b794286087296b9a9
Showing 1 changed file with 2 additions and 5 deletions.
@@ -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
};

@@ -274,10 +274,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

1 comment on commit d9b2c4c

@openjdk-notifier
Copy link

@openjdk-notifier openjdk-notifier bot commented on d9b2c4c Nov 18, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please sign in to comment.