Skip to content

Commit 31d35ae

Browse files
committed
Fix vla size
1 parent 098276c commit 31d35ae

File tree

1 file changed

+9
-9
lines changed

1 file changed

+9
-9
lines changed

include/ack/bigint.hpp

+9-9
Original file line numberDiff line numberDiff line change
@@ -509,7 +509,7 @@ namespace ack {
509509
}
510510
else {
511511
//word_t* t = (word_t*)__builtin_alloca(sizeof(word_t) * yn);
512-
word_t t[sizeof(word_t) * yn];
512+
word_t t[yn];
513513
qv = x[yn - 1] / (yTop + 1);
514514
mul_word_n(t, y, qv, yn);
515515
sub(x, x, t);
@@ -539,7 +539,7 @@ namespace ack {
539539
}
540540

541541
//word_t* t = (word_t*)__builtin_alloca(sizeof(word_t) * yn);
542-
word_t t[sizeof(word_t) * yn];
542+
word_t t[yn];
543543
//word_t* t = (word_t*)alloca(sizeof(word_t) * yn);
544544
word_t rev = 0;
545545
// rev = M/2 M / yTop where M = 1 << word_bit_size
@@ -640,11 +640,11 @@ namespace ack {
640640
const size_t shift = word_bit_size - 1 - yTopBit;
641641
if (shift) {
642642
//word_t* yShift = (word_t* )__builtin_alloca(sizeof(word_t) * yn);
643-
word_t yShift[sizeof(word_t) * yn];
643+
word_t yShift[yn];
644644
//word_t* yShift = (word_t* )alloca(sizeof(word_t) * yn);
645645
shl_n(yShift, y, shift, yn);
646646
//word_t* xx = (word_t*)__builtin_alloca(sizeof(word_t) * (xn + 1));
647-
word_t xx[sizeof(word_t) * (xn + 1)];
647+
word_t xx[xn + 1];
648648
//word_t* xx = (word_t*)alloca(sizeof(word_t) * (xn + 1));
649649
word_t v = shl_n(xx, x, shift, xn);
650650
if (v) {
@@ -982,7 +982,7 @@ namespace ack {
982982
}
983983

984984
//word_t* xx = (word_t*)__builtin_alloca(sizeof(word_t) * xn);
985-
word_t xx[sizeof(word_t) * xn];
985+
word_t xx[xn];
986986
detail::copy_n(xx, &x[0], xn);
987987

988988
word_t* qq = q ? &q->buf_[0] : nullptr;
@@ -1073,10 +1073,10 @@ namespace ack {
10731073

10741074
constexpr size_t w = 4; // don't change
10751075
constexpr size_t m = word_bit_size / w;
1076-
constexpr size_t tblSize = (1 << w) - 1;
1077-
bigint tbl[tblSize];
1076+
constexpr size_t tbl_size = (1 << w) - 1;
1077+
bigint tbl[tbl_size];
10781078
tbl[0] = x;
1079-
for (size_t i = 1; i < tblSize; i++) {
1079+
for (size_t i = 1; i < tbl_size; i++) {
10801080
if (!mul(tbl[i], tbl[i - 1], x)) {
10811081
return false;
10821082
}
@@ -1100,7 +1100,7 @@ namespace ack {
11001100
}
11011101
}
11021102

1103-
const word_t idx = (v >> ((m - 1 - j) * w)) & tblSize;
1103+
const word_t idx = (v >> ((m - 1 - j) * w)) & tbl_size;
11041104
if (idx) {
11051105
if (!mul(z, z, tbl[idx - 1])) {
11061106
return false;

0 commit comments

Comments
 (0)