 |
Changeset 3836
- Timestamp:
- 08/03/08 13:17:34
(4 months ago)
- Author:
- kris
- Message:
fixes #1157 :: tango.io.digest.Crc32 speed-up (with version, for now)
thanks to gim
-
Files:
-
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
| r2809 |
r3836 |
|
| 47 | 47 | for (int j = 8; j > 0; j--) |
|---|
| 48 | 48 | { |
|---|
| | 49 | version (Gim) |
|---|
| | 50 | { |
|---|
| | 51 | if (value & 1) |
|---|
| | 52 | { |
|---|
| | 53 | value >>>= 1; |
|---|
| | 54 | value ^= polynomial; |
|---|
| | 55 | } |
|---|
| | 56 | else |
|---|
| | 57 | value >>>= 1; |
|---|
| | 58 | } |
|---|
| | 59 | else |
|---|
| | 60 | { |
|---|
| 49 | 61 | if (value & 1) { |
|---|
| 50 | 62 | value &= 0xFFFFFFFE; |
|---|
| … | … | |
| 58 | 70 | value /= 2; |
|---|
| 59 | 71 | value &= 0x7FFFFFFF; |
|---|
| | 72 | } |
|---|
| 60 | 73 | } |
|---|
| 61 | 74 | } |
|---|
| … | … | |
| 72 | 85 | auto i = cast(ubyte) r;// & 0xff; |
|---|
| 73 | 86 | i ^= value; |
|---|
| | 87 | version (Gim) |
|---|
| | 88 | { |
|---|
| | 89 | r >>>= 8; |
|---|
| | 90 | } |
|---|
| | 91 | else |
|---|
| | 92 | { |
|---|
| 74 | 93 | r &= 0xFFFFFF00; |
|---|
| 75 | 94 | r /= 0x100; |
|---|
| 76 | 95 | r &= 16777215; |
|---|
| | 96 | } |
|---|
| 77 | 97 | r ^= table[i]; |
|---|
| 78 | 98 | } |
|---|
Download in other formats:
|
 |
 |
|
 |
Copyright © 2006-2008 Tango. All Rights Reserved. | Page Width:
Static or
Dynamic