On Wed, Nov 4, 2015 at 3:42 AM, Stephan Bergmann <sbergman@redhat.com>
wrote:
On 11/04/2015 09:16 AM, Daniel Robertson wrote:
commit f57a6593e21d45008173352fc29ededdbc2c8878
Author: Daniel Robertson <danlrobertson89@gmail.com>
Date: Tue Nov 3 14:14:08 2015 -0500
editeng: Eliminate unecessary padding in classes
Edit the order of SvxLRSpaceItem and PaintFirstLineInfo members to
remove unecessary padding due to data alignment.
Change-Id: Icf2c92ef86a32384e51d1cb6f1a079b10995dfd5
Reviewed-on: https://gerrit.libreoffice.org/19763
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Norbert Thiebaud <nthiebaud@gmail.com>
[...]
diff --git a/include/editeng/lrspitem.hxx b/include/editeng/lrspitem.hxx
index 40da999..94daed8 100644
--- a/include/editeng/lrspitem.hxx
+++ b/include/editeng/lrspitem.hxx
@@ -50,15 +50,15 @@
class EDITENG_DLLPUBLIC SvxLRSpaceItem : public SfxPoolItem
{
- short nFirstLineOfst; // First-line indent _always_ relative
to
nTxtLeft
long nTxtLeft; // We spend a sal_uInt16
long nLeftMargin; // nLeft or the negative first-line
indent
long nRightMargin; // The unproblematic right edge
sal_uInt16 nPropFirstLineOfst, nPropLeftMargin, nPropRightMargin;
+ short nFirstLineOfst; // First-line indent _always_ relative
to
nTxtLeft
With micro-optimization changes like these, I would leave it to some
domain
expert to decide whether it is actually worth it (i.e., whether on the
one
hand the existing member order had been chosen deliberately, to aid human
comprehension, and whether on the other hand enough instances of that
class
are created to warrant any such optimization).
Domain expert are the last one to reliably evaluate 'human
comprehension", since they _are_ domain expert
wrt to the number of instance... even if there is only one. is it a
reason to be sloppy ?
bool bAutoFirst : 1; // Automatic calculation of the
first line indent
- bool bExplicitZeroMarginValRight;
- bool bExplicitZeroMarginValLeft;
+ bool bExplicitZeroMarginValRight : 1;
+ bool bExplicitZeroMarginValLeft : 1;
It is unclear whether that is an optimization or a pessimization.
you can choose size or perf.. but having a
bool foo:1
followed by 2 plain bool
is wrong either way.
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.