crc32: major optimization
authorJoakim Tjernlund <Joakim.Tjernlund@transmode.se>
Mon, 24 May 2010 21:33:31 +0000 (14:33 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 25 May 2010 15:07:06 +0000 (08:07 -0700)
commit836e2af92503f1642dbc3c3281ec68ec1dd39d2e
tree8b68f906e1ca6f39d159f306623da86f4e02f8cb
parentd4977c78e9c7dd042f96f4a21d957bc25a561333
crc32: major optimization

Precompute more crc32 values(0xcc00, 0xcc0000 and 0xcc000000) into tables.
 This increases the table size from 1KB to 4KB but the performance benfit
makes it worth it:

28% faster on MPC8321, 266 MHz
2x faster on Core 2 Duo, 3.1GHz

[akpm@linux-foundation.org: coding-style fixes]
Signed-off-by: Joakim Tjernlund <Joakim.Tjernlund@transmode.se>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
lib/crc32.c
lib/gen_crc32table.c