PostGIS  3.0.6dev-r@@SVN_REVISION@@

◆ uint64_interleave_2()

static uint64_t uint64_interleave_2 ( uint64_t  x,
uint64_t  y 
)
inlinestatic

Definition at line 796 of file gbox.c.

797 {
798  x = (x | (x << 16)) & 0x0000FFFF0000FFFFULL;
799  x = (x | (x << 8)) & 0x00FF00FF00FF00FFULL;
800  x = (x | (x << 4)) & 0x0F0F0F0F0F0F0F0FULL;
801  x = (x | (x << 2)) & 0x3333333333333333ULL;
802  x = (x | (x << 1)) & 0x5555555555555555ULL;
803 
804  y = (y | (y << 16)) & 0x0000FFFF0000FFFFULL;
805  y = (y | (y << 8)) & 0x00FF00FF00FF00FFULL;
806  y = (y | (y << 4)) & 0x0F0F0F0F0F0F0F0FULL;
807  y = (y | (y << 2)) & 0x3333333333333333ULL;
808  y = (y | (y << 1)) & 0x5555555555555555ULL;
809 
810  return x | (y << 1);
811 }

References pixval::x, and pixval::y.

Referenced by uint32_hilbert().

Here is the caller graph for this function: