aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntonio Borneo <borneo.antonio@gmail.com>2024-05-13 15:40:15 +0200
committerAntonio Borneo <borneo.antonio@gmail.com>2024-06-23 09:28:08 +0000
commit91043cecee396209bd4d616fe6e78d835bebd978 (patch)
tree00ca97a56ba405c88537d9f6313db06ee0d1c851
parentc5358c84ad0d3e7497498e0457cec7785f72910a (diff)
downloadriscv-openocd-91043cecee396209bd4d616fe6e78d835bebd978.zip
riscv-openocd-91043cecee396209bd4d616fe6e78d835bebd978.tar.gz
riscv-openocd-91043cecee396209bd4d616fe6e78d835bebd978.tar.bz2
target: aarch64: align armv8_read_reg() and armv8_read_reg32()
These functions are today always called with non-NULL parameter regval, so the actual check is not needed. Anyway, for any future code change, check the parameter at the entry of the functions and return error if it is not valid. Simplify the check to assign the result value and align the code of the two functions. Change-Id: Ie4d98063006d70d9e2bcfc00bc930133caf33515 Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com> Reviewed-on: https://review.openocd.org/c/openocd/+/8266 Tested-by: jenkins
-rw-r--r--src/target/armv8.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/target/armv8.c b/src/target/armv8.c
index bf582ff..8d97902 100644
--- a/src/target/armv8.c
+++ b/src/target/armv8.c
@@ -282,6 +282,9 @@ static int armv8_read_reg(struct armv8_common *armv8, int regnum, uint64_t *regv
uint32_t value;
uint64_t value_64;
+ if (!regval)
+ return ERROR_FAIL;
+
switch (regnum) {
case 0 ... 30:
retval = dpm->instr_read_data_dcc_64(dpm,
@@ -361,10 +364,8 @@ static int armv8_read_reg(struct armv8_common *armv8, int regnum, uint64_t *regv
break;
}
- if (retval == ERROR_OK && regval)
+ if (retval == ERROR_OK)
*regval = value_64;
- else
- retval = ERROR_FAIL;
return retval;
}
@@ -512,6 +513,9 @@ static int armv8_read_reg32(struct armv8_common *armv8, int regnum, uint64_t *re
uint32_t value = 0;
int retval;
+ if (!regval)
+ return ERROR_FAIL;
+
switch (regnum) {
case ARMV8_R0 ... ARMV8_R14:
/* return via DCC: "MCR p14, 0, Rnum, c0, c5, 0" */
@@ -587,7 +591,7 @@ static int armv8_read_reg32(struct armv8_common *armv8, int regnum, uint64_t *re
break;
}
- if (retval == ERROR_OK && regval)
+ if (retval == ERROR_OK)
*regval = value;
return retval;