--- a/src/hotspot/cpu/aarch64/register_aarch64.hpp Thu Oct 17 20:27:44 2019 +0100
+++ b/src/hotspot/cpu/aarch64/register_aarch64.hpp Thu Oct 17 20:53:35 2019 +0100
@@ -136,7 +136,7 @@
VMReg as_VMReg();
// derived registers, offsets, and addresses
- FloatRegister successor() const { return as_FloatRegister(encoding() + 1); }
+ FloatRegister successor() const { return as_FloatRegister((encoding() + 1) % 32); }
// accessors
int encoding() const { assert(is_valid(), "invalid register"); return (intptr_t)this; }
@@ -230,6 +230,11 @@
return *this;
}
+ RegSet &operator-=(const RegSet aSet) {
+ *this = *this - aSet;
+ return *this;
+ }
+
static RegSet of(Register r1) {
return RegSet(r1);
}