aboutsummaryrefslogtreecommitdiffstats
path: root/src/mp_asm.cpp
diff options
context:
space:
mode:
authorlloyd <[email protected]>2006-06-06 15:13:50 +0000
committerlloyd <[email protected]>2006-06-06 15:13:50 +0000
commit69df9ac7fdaf575474e3904e08ad6974d06e9379 (patch)
treefb82a241935f21abdd354d3c9e7455ecb55b43cb /src/mp_asm.cpp
parentd3522b3622ac4aad18215bc173f9e26953c6cc3d (diff)
Revert the last change; it turned out to require a bunch of changes to the
assembly code in order to handle the argument aliasing correctly, and it seems I don't understand GCC's extended asm syntax well enough to figure out how to get it work in a way that isn't hideous.
Diffstat (limited to 'src/mp_asm.cpp')
-rw-r--r--src/mp_asm.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/mp_asm.cpp b/src/mp_asm.cpp
index ef8292083..ec2e31011 100644
--- a/src/mp_asm.cpp
+++ b/src/mp_asm.cpp
@@ -148,7 +148,7 @@ void bigint_linmul2(word x[], u32bit x_size, word y)
carry = word8_linmul2(x + j, y, carry);
for(u32bit j = blocks; j != x_size; ++j)
- x[j] = word_madd2(x[j], y, &carry);
+ x[j] = word_madd2(x[j], y, carry, &carry);
x[x_size] = carry;
}
@@ -166,7 +166,7 @@ void bigint_linmul3(word z[], const word x[], u32bit x_size, word y)
carry = word8_linmul3(z + j, x + j, y, carry);
for(u32bit j = blocks; j != x_size; ++j)
- z[j] = word_madd2(x[j], y, &carry);
+ z[j] = word_madd2(x[j], y, carry, &carry);
z[x_size] = carry;
}
@@ -190,7 +190,7 @@ void bigint_simple_mul(word z[], const word x[], u32bit x_size,
carry = word8_madd3(z + j + k, y + k, x_j, carry);
for(u32bit k = blocks; k != y_size; ++k)
- z[j+k] = word_madd3(x_j, y[k], z[j+k], &carry);
+ z[j+k] = word_madd3(x_j, y[k], z[j+k], carry, &carry);
z[j+y_size] = carry;
}
@@ -215,7 +215,7 @@ void montgomery_reduce(word z[], u32bit z_size,
carry = word8_madd3(z_j + k, x + k, y, carry);
for(u32bit k = blocks; k != x_size; ++k)
- z_j[k] = word_madd3(x[k], y, z_j[k], &carry);
+ z_j[k] = word_madd3(x[k], y, z_j[k], carry, &carry);
word carry2 = 0;
z_j[x_size] = word_add(z_j[x_size], carry, &carry2);