[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemacs-commit] qemacs qe.c
From: |
Charlie Gordon |
Subject: |
[Qemacs-commit] qemacs qe.c |
Date: |
Wed, 19 Apr 2017 04:20:20 -0400 (EDT) |
CVSROOT: /sources/qemacs
Module name: qemacs
Changes by: Charlie Gordon <chqrlie> 17/04/19 04:20:20
Modified files:
. : qe.c
Log message:
display: improve crc because of trivial collisions
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/qemacs/qe.c?cvsroot=qemacs&r1=1.273&r2=1.274
Patches:
Index: qe.c
===================================================================
RCS file: /sources/qemacs/qemacs/qe.c,v
retrieving revision 1.273
retrieving revision 1.274
diff -u -b -r1.273 -r1.274
--- qe.c 18 Apr 2017 14:26:39 -0000 1.273
+++ qe.c 19 Apr 2017 08:20:20 -0000 1.274
@@ -3109,22 +3109,28 @@
*/
/* XXX: We still have a bug when transposing two 31 byte words as in
* B123456789012345678901234567890 A123456789012345678901234567890
+ * Here is another trivial collision:
+ s->esc_params[s->nb_esc_params] = 0;
+ s->has_params[s->nb_esc_params] = 1;
*/
while (((uintptr_t)data & 3) && size > 0) {
//sum += ((sum >> 31) & 1) + sum + *data;
- sum += sum + *data + (sum >> 32);
+ //sum += sum + *data + (sum >> 32);
+ sum = (sum << 3) + *data + (sum >> 32);
data++;
size--;
}
while (size >= 4) {
//sum += ((sum >> 31) & 1) + sum + *(const uint32_t *)(const void
*)data;
- sum += sum + *(const uint32_t *)(const void *)data + (sum >> 32);
+ //sum += sum + *(const uint32_t *)(const void *)data + (sum >> 32);
+ sum = (sum << 3) + *(const uint32_t *)(const void *)data + (sum >> 32);
data += 4;
size -= 4;
}
while (size > 0) {
//sum += ((sum >> 31) & 1) + sum + *data;
- sum += sum + *data + (sum >> 32);
+ //sum += sum + *data + (sum >> 32);
+ sum = (sum << 2) + *data + (sum >> 32);
data++;
size--;
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemacs-commit] qemacs qe.c,
Charlie Gordon <=