projects
/
scc.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
2cb24c6
)
Fixed add64
author
Robert Pengelly
<robertapengelly@hotmail.com>
Wed, 8 Jul 2026 16:54:46 +0000
(17:54 +0100)
committer
Robert Pengelly
<robertapengelly@hotmail.com>
Wed, 8 Jul 2026 16:54:46 +0000
(17:54 +0100)
int64.c
patch
|
blob
|
history
diff --git
a/int64.c
b/int64.c
index 257524e4f39672b65e25a06e996f601e098b6be7..1e4fe92408d5a61a8177b96e37c2994ab9619f86 100644
(file)
--- a/
int64.c
+++ b/
int64.c
@@
-15,10
+15,10
@@
void add64 (int64_s *a, int64_s b) {
unsigned long al = a->low & U32_MASK;
unsigned long bl = b.low & U32_MASK;
- unsigned long raw_sum =
al + bl
;
- unsigned long carry = (raw_sum
>> 32) & 1
UL;
-
- a->low = raw_sum
& U32_MASK
;
+ unsigned long raw_sum =
(al + bl) & U32_MASK
;
+ unsigned long carry = (raw_sum
< al) ? 1UL : 0
UL;
+
+ a->low = raw_sum;
a->high = ((a->high & U32_MASK) + (b.high & U32_MASK) + carry) & U32_MASK;
}