On Mon, Jul 16, 2018 at 09:41:12PM +0100, Peter Maydell wrote: > On 16 July 2018 at 20:47, BALATON Zoltan <bala...@eik.bme.hu> wrote: > > Commit 3556c233d 5 years ago added an option to disable QOM debugging, > > noting that it can have high performance cost but left the default to on. > > Change the default to off and only enable it when debugging is requested > > to avoid the performance penalty for those compiling without debug options. > > > > Signed-off-by: BALATON Zoltan <bala...@eik.bme.hu> > > Looking at the code, doesn't this disable all the type checking > on the QOM casts? That is not something I think we should drop, > in the same way that we do not disable assert()s even in the > non-debug build. > > Is this coming up as significant in profiling? In the past we've > done some special casing if there are particular QOM casts in > hot paths that use significant runtime.
There might also be scope for doing optimization of the object_dynamic_cast_assert() implementation too. Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|