p.z.l wrote:
Have you got any idea why this: c = crc32[(c ^ buffer[i]) & 0xFF] ^ ( c >> 8 ); /// lzip is faster than this: c = (c >> 8) ^ crc32[(c & 0xFF) ^ buffer[i]]; /// sbrumme crc
May be because of the different ordering of the operations. You may try to transform one of the lines above into the other step by step, and test the speed of the intermediate stages.