target/arm: Hoist isbanked computation in add_cpreg_to_hashtable
Computing isbanked only once makes the code a bit easier to read. Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Message-id: 20220501055028.646596-17-richard.henderson@linaro.org Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
4c8c454115
commit
10748a9652
@ -8510,6 +8510,7 @@ static void add_cpreg_to_hashtable(ARMCPU *cpu, const ARMCPRegInfo *r,
|
||||
bool is64 = r->type & ARM_CP_64BIT;
|
||||
bool ns = secstate & ARM_CP_SECSTATE_NS;
|
||||
int cp = r->cp;
|
||||
bool isbanked;
|
||||
size_t name_len;
|
||||
|
||||
switch (state) {
|
||||
@ -8557,7 +8558,8 @@ static void add_cpreg_to_hashtable(ARMCPU *cpu, const ARMCPRegInfo *r,
|
||||
r2->opaque = opaque;
|
||||
}
|
||||
|
||||
if (r->bank_fieldoffsets[0] && r->bank_fieldoffsets[1]) {
|
||||
isbanked = r->bank_fieldoffsets[0] && r->bank_fieldoffsets[1];
|
||||
if (isbanked) {
|
||||
/* Register is banked (using both entries in array).
|
||||
* Overwriting fieldoffset as the array is only used to define
|
||||
* banked registers but later only fieldoffset is used.
|
||||
@ -8566,7 +8568,7 @@ static void add_cpreg_to_hashtable(ARMCPU *cpu, const ARMCPRegInfo *r,
|
||||
}
|
||||
|
||||
if (state == ARM_CP_STATE_AA32) {
|
||||
if (r->bank_fieldoffsets[0] && r->bank_fieldoffsets[1]) {
|
||||
if (isbanked) {
|
||||
/* If the register is banked then we don't need to migrate or
|
||||
* reset the 32-bit instance in certain cases:
|
||||
*
|
||||
|
Loading…
Reference in New Issue
Block a user