[PULL 19/21] target: Remove unnecessary CPU() cast

Markus Armbruster posted 21 patches 5 years, 9 months ago
Maintainers: Peter Maydell <peter.maydell@linaro.org>, Igor Mammedov <imammedo@redhat.com>, Keith Busch <kbusch@kernel.org>, Fam Zheng <fam@euphon.net>, "Gonglei (Arei)" <arei.gonglei@huawei.com>, Subbaraya Sundeep <sundeep.lkml@gmail.com>, Leif Lindholm <leif@nuviainc.com>, Sergio Lopez <slp@redhat.com>, Alistair Francis <alistair@alistair23.me>, Cornelia Huck <cohuck@redhat.com>, Niek Linnenbank <nieklinnenbank@gmail.com>, Bastian Koppelmann <kbastian@mail.uni-paderborn.de>, "Cédric Le Goater" <clg@kaod.org>, Jean-Christophe Dubois <jcd@tribudubois.net>, Li Zhijian <lizhijian@cn.fujitsu.com>, Marek Vasut <marex@denx.de>, Corey Minyard <minyard@acm.org>, Sven Schnelle <svens@stackframe.org>, "Philippe Mathieu-Daudé" <philmd@redhat.com>, Halil Pasic <pasic@linux.ibm.com>, Paul Durrant <paul@xen.org>, Andrew Baumann <Andrew.Baumann@microsoft.com>, Sagar Karandikar <sagark@eecs.berkeley.edu>, Xiao Guangrong <xiaoguangrong.eric@gmail.com>, Andrew Jeffery <andrew@aj.id.au>, Pierre Morel <pmorel@linux.ibm.com>, BALATON Zoltan <balaton@eik.bme.hu>, Andrzej Zaborowski <balrogg@gmail.com>, Beniamino Galvani <b.galvani@gmail.com>, "Hervé Poussineau" <hpoussin@reactos.org>, Alex Williamson <alex.williamson@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>, Max Reitz <mreitz@redhat.com>, Kevin Wolf <kwolf@redhat.com>, "Edgar E. Iglesias" <edgar.iglesias@gmail.com>, Jason Wang <jasowang@redhat.com>, Eric Farman <farman@linux.ibm.com>, Gerd Hoffmann <kraxel@redhat.com>, David Hildenbrand <david@redhat.com>, Palmer Dabbelt <palmer@dabbelt.com>, Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>, Dmitry Fleytman <dmitry.fleytman@gmail.com>, Anthony Perard <anthony.perard@citrix.com>, Chris Wulff <crwulff@gmail.com>, Andrey Smirnov <andrew.smirnov@gmail.com>, Stefano Stabellini <sstabellini@kernel.org>, John Snow <jsnow@redhat.com>, Jiri Slaby <jslaby@suse.cz>, "Marc-André Lureau" <marcandre.lureau@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>, Stefan Hajnoczi <stefanha@redhat.com>, Markus Armbruster <armbru@redhat.com>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, Radoslaw Biernacki <radoslaw.biernacki@linaro.org>, Raphael Norwitz <raphael.norwitz@nutanix.com>, Artyom Tarasenko <atar4qemu@gmail.com>, Laszlo Ersek <lersek@redhat.com>, Zhang Chen <chen.zhang@intel.com>, Amit Shah <amit@kernel.org>, Alberto Garcia <berto@igalia.com>, "Daniel P. Berrangé" <berrange@redhat.com>, "Dr. David Alan Gilbert" <dgilbert@redhat.com>, Laurent Vivier <lvivier@redhat.com>, David Gibson <david@gibson.dropbear.id.au>, Aurelien Jarno <aurelien@aurel32.net>, Richard Henderson <rth@twiddle.net>, Aleksandar Markovic <aleksandar.qemu.devel@gmail.com>, Stefan Weil <sw@weilnetz.de>, Joel Stanley <joel@jms.id.au>, Christian Borntraeger <borntraeger@de.ibm.com>, Eduardo Habkost <ehabkost@redhat.com>, Tony Krowiak <akrowiak@linux.ibm.com>
[PULL 19/21] target: Remove unnecessary CPU() cast
Posted by Markus Armbruster 5 years, 9 months ago
From: Philippe Mathieu-Daudé <f4bug@amsat.org>

The CPU() macro is defined as:

  #define CPU(obj) ((CPUState *)(obj))

which expands to:

  ((CPUState *)object_dynamic_cast_assert((Object *)(obj), (name),
                                          __FILE__, __LINE__, __func__))

This assertion can only fail when @obj points to something other
than its stated type, i.e. when we're in undefined behavior country.

Remove the unnecessary CPU() casts when we already know the pointer
is of CPUState type.

Patch created mechanically using spatch with this script:

  @@
  typedef CPUState;
  CPUState *s;
  @@
  -   CPU(s)
  +   s

Acked-by: David Gibson <david@gibson.dropbear.id.au>
Reviewed-by: Cédric Le Goater <clg@kaod.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-Id: <20200512070020.22782-2-f4bug@amsat.org>
---
 target/ppc/mmu_helper.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/target/ppc/mmu_helper.c b/target/ppc/mmu_helper.c
index 86c667b094..8972714775 100644
--- a/target/ppc/mmu_helper.c
+++ b/target/ppc/mmu_helper.c
@@ -1820,7 +1820,7 @@ static inline void do_invalidate_BAT(CPUPPCState *env, target_ulong BATu,
     if (((end - base) >> TARGET_PAGE_BITS) > 1024) {
         /* Flushing 1024 4K pages is slower than a complete flush */
         LOG_BATS("Flush all BATs\n");
-        tlb_flush(CPU(cs));
+        tlb_flush(cs);
         LOG_BATS("Flush done\n");
         return;
     }
-- 
2.21.1