[postgis-devel] alignment issues
strk at refractions.net
strk at refractions.net
Thu Feb 10 09:32:53 PST 2005
I've committed the memory alignment changes:
SERIALIZED_FORM() calls VARDATA()
getbox2d_internal() has been dropped
getPoint() renamed to getPoint_internal() and
all its uses have been checked.
Please run any tests you have available with the new code (the regress
tests are also fine, but they need a lot of additions).
--strk;
On Thu, Feb 10, 2005 at 05:33:28PM +0100, strk at refractions.net wrote:
> On Thu, Feb 10, 2005 at 03:56:22PM -0000, Mark Cave-Ayland wrote:
> > Hi strk,
> >
> > > -----Original Message-----
> > > From: postgis-devel-bounces at postgis.refractions.net
> > > [mailto:postgis-devel-bounces at postgis.refractions.net] On
> > > Behalf Of strk at refractions.net
> > > Sent: 10 February 2005 14:13
> > > To: 'PostGIS Development Discussion'
> > > Subject: Re: [postgis-devel] alignment issues
> >
> > (cut)
> >
> > > > I haven't had much experience with alignment issues, however this
> > > > looks like the easiest solution to me (e.g. you can declare
> > > a single
> > > > POINT2D in your function and then reuse it for the entire set of
> > > > POINT2Ds referenced within). I also noticed in the source that the
> > > > functions to do this already exist, for example getPoint2d_p....
> > >
> > > Yes, but they are cheating, they call getPoint() internally
> > > ... --strk;
> >
> > Really? Looking at RC2 I can't see any reference to getPoint() in
> > getPoint2d_p(), plus the code looks fairly similar to getPoint() just below
> > it...? Is this done in pointArray_ptsize() or in the serialized_pointlist[]
> > array?
>
> That one doesn't, getPoint3dz_p and others do.. not much important,
> I've already fixed them to not use casts. Also, I've renamed getPoint() to
> getPoint_internal(), as it would still be useful to get a reference to
> byte offset of a given point inside a POINTARRAY (tipically for setting
> value of a specific point).
>
> BTW, POINTARRAY management is not our only alignment-related issue.
> We also have LWGEOM->bbox being a casted pointer to internal (serialized)
> storage - easily fixed - and most notably the SERIALIZED_FORM() macro
> which just moves the pointer 4 bytes after the start...
>
> These are big changes, but I think its worth completing before 1.0.
>
> --strk;
>
>
> >
> >
> > Kind regards,
> >
> > Mark.
> >
> > ------------------------
> > WebBased Ltd
> > South West Technology Centre
> > Tamar Science Park
> > Plymouth
> > PL6 8BT
> >
> > T: +44 (0)1752 791021
> > F: +44 (0)1752 791023
> > W: http://www.webbased.co.uk
> >
> >
> > _______________________________________________
> > postgis-devel mailing list
> > postgis-devel at postgis.refractions.net
> > http://postgis.refractions.net/mailman/listinfo/postgis-devel
> _______________________________________________
> postgis-devel mailing list
> postgis-devel at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-devel
More information about the postgis-devel
mailing list