path: root/src/plugins/bearer
diff options
authorMarc Mutz <>2019-06-26 20:56:40 +0200
committerMarc Mutz <>2019-08-07 20:09:13 +0000
commit5f1f0fe0b71c19be041ec85a9449584649c9fc18 (patch)
treeea944c45471eaa41ed803b0726ced78b4895b4b0 /src/plugins/bearer
parent213f7d1b1f89a55cc10fb8355cac87927d038f00 (diff)
QDateTimePrivate: inherit QSharedData and other cleanups
Don't manage the ref-count yourself, as this requires the code to use the QAtomic copy ctor, which we want to remove going forward. Using QSharedData, we can let the compiler write the code for us. Since 'ref' this way moves to the first spot in the list of effective members, creating a 4B hole between itself and 'msecs', swap 'status' and 'msecs' to fill the hole: offset: 0 8 16 24 | | | | without v v v v adj.mnt: |*R*| | msecs | S | U | TZ.... before: | msecs | S | U |*R*| | TZ... after: |*R*| S | msecs | U | | TZ.... This keeps the padding out of the critical first word, which improves latency. That said, for accessing the members the old layout surely was optimal. This layout optimizes copies and pessimizes access to 'msecs' on 32-bit platforms without the Critical Word First optimization. Requires adjustments to tst_toolsupport and the qhooks version. Also default members using NSDMI, consequently drop the manual default ctor. Change-Id: I3c48e68694ad29b28a13aa47ea0f283fae52edd7 Reviewed-by: Edward Welbourne <> Reviewed-by: Thiago Macieira <>
Diffstat (limited to 'src/plugins/bearer')
0 files changed, 0 insertions, 0 deletions