Message ID | 20230720171933.404398-5-dbarboza@ventanamicro.com |
---|---|
State | New |
Headers | show |
Series | riscv: add 'max' CPU, deprecate 'any' | expand |
On 2023/7/21 01:19, Daniel Henrique Barboza wrote: > This last blank element is used by the 'for' loop to check if a property > has a valid name. > > Remove it and use ARRAY_SIZE() instead like riscv_cpu_options is already > using. All future arrays will also do the same and we'll able to > encapsulate more repetitions in macros later on. > > Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com> > --- Reviewed-by: Weiwei Li <liweiwei@iscas.ac.cn> Weiwei Li > target/riscv/cpu.c | 12 ++++-------- > 1 file changed, 4 insertions(+), 8 deletions(-) > > diff --git a/target/riscv/cpu.c b/target/riscv/cpu.c > index 7f0852a14e..4dadb7f0a0 100644 > --- a/target/riscv/cpu.c > +++ b/target/riscv/cpu.c > @@ -1835,8 +1835,6 @@ static Property riscv_cpu_extensions[] = { > DEFINE_PROP_BOOL("x-zfbfmin", RISCVCPU, cfg.ext_zfbfmin, false), > DEFINE_PROP_BOOL("x-zvfbfmin", RISCVCPU, cfg.ext_zvfbfmin, false), > DEFINE_PROP_BOOL("x-zvfbfwma", RISCVCPU, cfg.ext_zvfbfwma, false), > - > - DEFINE_PROP_END_OF_LIST(), > }; > > static Property riscv_cpu_options[] = { > @@ -1894,14 +1892,13 @@ static void riscv_cpu_add_kvm_unavail_prop(Object *obj, const char *prop_name) > > static void riscv_cpu_add_kvm_properties(Object *obj) > { > - Property *prop; > DeviceState *dev = DEVICE(obj); > > kvm_riscv_init_user_properties(obj); > riscv_cpu_add_misa_properties(obj); > > - for (prop = riscv_cpu_extensions; prop && prop->name; prop++) { > - riscv_cpu_add_kvm_unavail_prop(obj, prop->name); > + for (int i = 0; i < ARRAY_SIZE(riscv_cpu_extensions); i++) { > + riscv_cpu_add_kvm_unavail_prop(obj, riscv_cpu_extensions[i].name); > } > > for (int i = 0; i < ARRAY_SIZE(riscv_cpu_options); i++) { > @@ -1922,7 +1919,6 @@ static void riscv_cpu_add_kvm_properties(Object *obj) > */ > static void riscv_cpu_add_user_properties(Object *obj) > { > - Property *prop; > DeviceState *dev = DEVICE(obj); > > #ifndef CONFIG_USER_ONLY > @@ -1936,8 +1932,8 @@ static void riscv_cpu_add_user_properties(Object *obj) > > riscv_cpu_add_misa_properties(obj); > > - for (prop = riscv_cpu_extensions; prop && prop->name; prop++) { > - qdev_property_add_static(dev, prop); > + for (int i = 0; i < ARRAY_SIZE(riscv_cpu_extensions); i++) { > + qdev_property_add_static(dev, &riscv_cpu_extensions[i]); > } > > for (int i = 0; i < ARRAY_SIZE(riscv_cpu_options); i++) {
diff --git a/target/riscv/cpu.c b/target/riscv/cpu.c index 7f0852a14e..4dadb7f0a0 100644 --- a/target/riscv/cpu.c +++ b/target/riscv/cpu.c @@ -1835,8 +1835,6 @@ static Property riscv_cpu_extensions[] = { DEFINE_PROP_BOOL("x-zfbfmin", RISCVCPU, cfg.ext_zfbfmin, false), DEFINE_PROP_BOOL("x-zvfbfmin", RISCVCPU, cfg.ext_zvfbfmin, false), DEFINE_PROP_BOOL("x-zvfbfwma", RISCVCPU, cfg.ext_zvfbfwma, false), - - DEFINE_PROP_END_OF_LIST(), }; static Property riscv_cpu_options[] = { @@ -1894,14 +1892,13 @@ static void riscv_cpu_add_kvm_unavail_prop(Object *obj, const char *prop_name) static void riscv_cpu_add_kvm_properties(Object *obj) { - Property *prop; DeviceState *dev = DEVICE(obj); kvm_riscv_init_user_properties(obj); riscv_cpu_add_misa_properties(obj); - for (prop = riscv_cpu_extensions; prop && prop->name; prop++) { - riscv_cpu_add_kvm_unavail_prop(obj, prop->name); + for (int i = 0; i < ARRAY_SIZE(riscv_cpu_extensions); i++) { + riscv_cpu_add_kvm_unavail_prop(obj, riscv_cpu_extensions[i].name); } for (int i = 0; i < ARRAY_SIZE(riscv_cpu_options); i++) { @@ -1922,7 +1919,6 @@ static void riscv_cpu_add_kvm_properties(Object *obj) */ static void riscv_cpu_add_user_properties(Object *obj) { - Property *prop; DeviceState *dev = DEVICE(obj); #ifndef CONFIG_USER_ONLY @@ -1936,8 +1932,8 @@ static void riscv_cpu_add_user_properties(Object *obj) riscv_cpu_add_misa_properties(obj); - for (prop = riscv_cpu_extensions; prop && prop->name; prop++) { - qdev_property_add_static(dev, prop); + for (int i = 0; i < ARRAY_SIZE(riscv_cpu_extensions); i++) { + qdev_property_add_static(dev, &riscv_cpu_extensions[i]); } for (int i = 0; i < ARRAY_SIZE(riscv_cpu_options); i++) {
This last blank element is used by the 'for' loop to check if a property has a valid name. Remove it and use ARRAY_SIZE() instead like riscv_cpu_options is already using. All future arrays will also do the same and we'll able to encapsulate more repetitions in macros later on. Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com> --- target/riscv/cpu.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-)