On Tuesday, 6 de September de 2011 12:12:10 [email protected] wrote:
> Yes, you're right that it adds some memory and startup overhead. The
> question that comes up is when you look at a whole system on whether this
> matters. If 95% of the apps anyway link to QtDeclarative or scripting in
> some way, it might not be a huge issue.
> 
> The relocations you mention below might be fixable by using -Bsymbolic and
> -Bsymbolic-functions when linking QtV8.

These numbers are with -Bsymbolic-functions already.

Without it, the number of non-relative relocations would increase, but I don't 
think by much. There aren't many exported classes.

The vast majority of these relocations are caused by the virtual tables of 
non-exported classes, with no exported base class:

 $ objdump -R libQtV8.so.5.0.0| awk '/__cxxabi/ || /__cxa_pure_virtual/{ print 
$3 }' | uniq -c
    525 _ZTVN10__cxxabiv120__si_class_type_infoE+0x0000000000000010
     56 _ZTVN10__cxxabiv117__class_type_infoE+0x0000000000000010
      2 _ZTVN10__cxxabiv121__vmi_class_type_infoE+0x0000000000000010
    319 __cxa_pure_virtual

This is caused by the code design: the visitor pattern that calls back into 
the the current class.

I was just pointing out that it isn't free. But I agree that the impact will 
be there if people want to use QML anyway.

It will just be nearly impossible convincing anyone not already using Qt that 
QtCore is acceptable (for example, to write system services on Linux).

The major problem I have is that it makes any port to a new architecture 
require 40k lines of code.

-- 
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
   Software Architect - Intel Open Source Technology Center
      PGP/GPG: 0x6EF45358; fingerprint:
      E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358

Attachment: signature.asc
Description: This is a digitally signed message part.

_______________________________________________
Qt5-feedback mailing list
[email protected]
http://lists.qt.nokia.com/mailman/listinfo/qt5-feedback

Reply via email to