Message ID | 7257db154178303a7913986e230ec0ce1af387cd.1635449225.git.balaton@eik.bme.hu |
---|---|
State | New |
Headers | show |
Series | More SH4 clean ups | expand |
On 10/28/21 21:27, BALATON Zoltan wrote: > Use g_new0 instead of g_malloc0 and avoid some unneeded temporary > variable assignments. > > Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu> > --- > hw/intc/sh_intc.c | 13 +++---------- > 1 file changed, 3 insertions(+), 10 deletions(-) > > diff --git a/hw/intc/sh_intc.c b/hw/intc/sh_intc.c > index eb58707e83..ed0a5f87cc 100644 > --- a/hw/intc/sh_intc.c > +++ b/hw/intc/sh_intc.c > @@ -400,21 +400,14 @@ int sh_intc_init(MemoryRegion *sysmem, > /* Allocate 4 MemoryRegions per register (2 actions * 2 aliases) */ > desc->iomem_aliases = g_new0(MemoryRegion, > (nr_mask_regs + nr_prio_regs) * 4); > - > - j = 0; > - i = sizeof(struct intc_source) * nr_sources; > - desc->sources = g_malloc0(i); > - > + desc->sources = g_new0(struct intc_source, nr_sources); g_new() is enough, since all get initialized in the next line. > for (i = 0; i < desc->nr_sources; i++) { Even clearer as: for (i = 0; i < nr_sources; i++) { > - struct intc_source *source = &desc->sources[i]; > - > - source->parent = desc; > + desc->sources[i].parent = desc; > } > - > desc->irqs = qemu_allocate_irqs(sh_intc_set_irq, desc, nr_sources); > memory_region_init_io(&desc->iomem, NULL, &sh_intc_ops, desc, "intc", > 0x100000000ULL); > - > + j = 0; > if (desc->mask_regs) { > for (i = 0; i < desc->nr_mask_regs; i++) { > struct intc_mask_reg *mr = &desc->mask_regs[i]; >
On Fri, 29 Oct 2021, Philippe Mathieu-Daudé wrote: > On 10/28/21 21:27, BALATON Zoltan wrote: >> Use g_new0 instead of g_malloc0 and avoid some unneeded temporary >> variable assignments. >> >> Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu> >> --- >> hw/intc/sh_intc.c | 13 +++---------- >> 1 file changed, 3 insertions(+), 10 deletions(-) >> >> diff --git a/hw/intc/sh_intc.c b/hw/intc/sh_intc.c >> index eb58707e83..ed0a5f87cc 100644 >> --- a/hw/intc/sh_intc.c >> +++ b/hw/intc/sh_intc.c >> @@ -400,21 +400,14 @@ int sh_intc_init(MemoryRegion *sysmem, >> /* Allocate 4 MemoryRegions per register (2 actions * 2 aliases) */ >> desc->iomem_aliases = g_new0(MemoryRegion, >> (nr_mask_regs + nr_prio_regs) * 4); >> - >> - j = 0; >> - i = sizeof(struct intc_source) * nr_sources; >> - desc->sources = g_malloc0(i); >> - >> + desc->sources = g_new0(struct intc_source, nr_sources); > > g_new() is enough, since all get initialized in the next line. Only their parent fields get init not the whole struct so I think g_new0 is still needed. >> for (i = 0; i < desc->nr_sources; i++) { > > Even clearer as: > > for (i = 0; i < nr_sources; i++) { This may be a small improvement but not too much, desc->sources is assigned a few lines before. I consider this change but not sure about the g_new0. Regards, BALATON Zoltan >> - struct intc_source *source = &desc->sources[i]; >> - >> - source->parent = desc; >> + desc->sources[i].parent = desc; >> } >> - >> desc->irqs = qemu_allocate_irqs(sh_intc_set_irq, desc, nr_sources); >> memory_region_init_io(&desc->iomem, NULL, &sh_intc_ops, desc, "intc", >> 0x100000000ULL); >> - >> + j = 0; >> if (desc->mask_regs) { >> for (i = 0; i < desc->nr_mask_regs; i++) { >> struct intc_mask_reg *mr = &desc->mask_regs[i]; >> > >
On 10/29/21 13:59, BALATON Zoltan wrote: > On Fri, 29 Oct 2021, Philippe Mathieu-Daudé wrote: >> On 10/28/21 21:27, BALATON Zoltan wrote: >>> Use g_new0 instead of g_malloc0 and avoid some unneeded temporary >>> variable assignments. >>> >>> Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu> >>> --- >>> hw/intc/sh_intc.c | 13 +++---------- >>> 1 file changed, 3 insertions(+), 10 deletions(-) >>> >>> diff --git a/hw/intc/sh_intc.c b/hw/intc/sh_intc.c >>> index eb58707e83..ed0a5f87cc 100644 >>> --- a/hw/intc/sh_intc.c >>> +++ b/hw/intc/sh_intc.c >>> @@ -400,21 +400,14 @@ int sh_intc_init(MemoryRegion *sysmem, >>> /* Allocate 4 MemoryRegions per register (2 actions * 2 aliases) */ >>> desc->iomem_aliases = g_new0(MemoryRegion, >>> (nr_mask_regs + nr_prio_regs) * 4); >>> - >>> - j = 0; >>> - i = sizeof(struct intc_source) * nr_sources; >>> - desc->sources = g_malloc0(i); >>> - >>> + desc->sources = g_new0(struct intc_source, nr_sources); >> >> g_new() is enough, since all get initialized in the next line. > > Only their parent fields get init not the whole struct so I think g_new0 > is still needed. Oh you are right, I missed that. > >>> for (i = 0; i < desc->nr_sources; i++) { >> >> Even clearer as: >> >> for (i = 0; i < nr_sources; i++) { > > This may be a small improvement but not too much, desc->sources is > assigned a few lines before. I consider this change but not sure about > the g_new0. > > Regards, > BALATON Zoltan
diff --git a/hw/intc/sh_intc.c b/hw/intc/sh_intc.c index eb58707e83..ed0a5f87cc 100644 --- a/hw/intc/sh_intc.c +++ b/hw/intc/sh_intc.c @@ -400,21 +400,14 @@ int sh_intc_init(MemoryRegion *sysmem, /* Allocate 4 MemoryRegions per register (2 actions * 2 aliases) */ desc->iomem_aliases = g_new0(MemoryRegion, (nr_mask_regs + nr_prio_regs) * 4); - - j = 0; - i = sizeof(struct intc_source) * nr_sources; - desc->sources = g_malloc0(i); - + desc->sources = g_new0(struct intc_source, nr_sources); for (i = 0; i < desc->nr_sources; i++) { - struct intc_source *source = &desc->sources[i]; - - source->parent = desc; + desc->sources[i].parent = desc; } - desc->irqs = qemu_allocate_irqs(sh_intc_set_irq, desc, nr_sources); memory_region_init_io(&desc->iomem, NULL, &sh_intc_ops, desc, "intc", 0x100000000ULL); - + j = 0; if (desc->mask_regs) { for (i = 0; i < desc->nr_mask_regs; i++) { struct intc_mask_reg *mr = &desc->mask_regs[i];
Use g_new0 instead of g_malloc0 and avoid some unneeded temporary variable assignments. Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu> --- hw/intc/sh_intc.c | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-)