qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v4 18/23] hw/intc/sh_intc: Simplify allocating sources array


From: BALATON Zoltan
Subject: Re: [PATCH v4 18/23] hw/intc/sh_intc: Simplify allocating sources array
Date: Fri, 29 Oct 2021 13:59:09 +0200 (CEST)

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];



reply via email to

[Prev in Thread] Current Thread [Next in Thread]