All pastes #940421 Raw Edit

Someone

public text v1 · immutable
·published 2008-03-12 23:16 UTC
rendered paste body
void g(const u32 *restrict in, u32 *restrict out)
{
        u32 x, y, z;
        u32 r, g, b;

        x = in[0];
        y = in[1];
        z = in[2];

        r = (x & 0xff0000ff) | (y & 0x0000ff00) | (z & 0x00ff0000);
        g = (x & 0x00ff0000) | (y & 0xff0000ff) | (z & 0x0000ff00);
        b = (x & 0x0000ff00) | (y & 0x00ff0000) | (z & 0xff0000ff);

        x = (r & 0x0000ff00) | (g & 0x00ff0000) | (b & 0xff0000ff);
        y = (r & 0x00ff0000) | (g & 0xff0000ff) | (b & 0x0000ff00);
        z = (r & 0xff0000ff) | (g & 0x0000ff00) | (b & 0x00ff0000);

        out[0] = x;
        out[1] = y;
        out[2] = z;
}