Skip to content

Commit d771d8a

Browse files
committed
Merge pull request #1929 from bettio/improve-intn-function-names
Improve intn function names Function names such as intn_addmn` were quite unreadable, let's just remove `mn` suffix. These changes are made under both the "Apache 2.0" and the "GNU Lesser General Public License 2.1 or later" license terms (dual license). SPDX-License-Identifier: Apache-2.0 OR LGPL-2.1-or-later
2 parents 13a0a46 + 38cdd9b commit d771d8a

File tree

3 files changed

+59
-60
lines changed

3 files changed

+59
-60
lines changed

src/libAtomVM/bif.c

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -568,7 +568,7 @@ static term add_maybe_bigint(Context *ctx, uint32_t fail_label, uint32_t live, t
568568

569569
intn_digit_t bigres[INTN_MAX_RES_LEN];
570570
intn_integer_sign_t res_sign;
571-
bigres_len = intn_addmn(bn1, bn1_len, bn1_sign, bn2, bn2_len, bn2_sign, bigres, &res_sign);
571+
bigres_len = intn_add(bn1, bn1_len, bn1_sign, bn2, bn2_len, bn2_sign, bigres, &res_sign);
572572

573573
return make_bigint(ctx, fail_label, live, bigres, bigres_len, res_sign);
574574
}
@@ -706,7 +706,7 @@ static term sub_maybe_bigint(Context *ctx, uint32_t fail_label, uint32_t live, t
706706

707707
intn_digit_t bigres[INTN_MAX_RES_LEN];
708708
intn_integer_sign_t res_sign;
709-
bigres_len = intn_submn(bn1, bn1_len, bn1_sign, bn2, bn2_len, bn2_sign, bigres, &res_sign);
709+
bigres_len = intn_sub(bn1, bn1_len, bn1_sign, bn2, bn2_len, bn2_sign, bigres, &res_sign);
710710

711711
return make_bigint(ctx, fail_label, live, bigres, bigres_len, res_sign);
712712
}
@@ -830,7 +830,7 @@ static term make_bigint(Context *ctx, uint32_t fail_label, uint32_t live,
830830

831831
return bigres_term;
832832
} else {
833-
int64_t res64 = intn_2_digits_to_int64(bigres, count, sign);
833+
int64_t res64 = intn_to_int64(bigres, count, sign);
834834
#if BOXED_TERMS_REQUIRED_FOR_INT64 > 1
835835
return make_maybe_boxed_int64(ctx, fail_label, live, res64);
836836
#else
@@ -849,7 +849,7 @@ static void term_to_bigint(term arg1, intn_digit_t *tmp_buf1, const intn_digit_t
849849
*b1_sign = (intn_integer_sign_t) term_boxed_integer_sign(arg1);
850850
} else {
851851
avm_int64_t i64 = term_maybe_unbox_int64(arg1);
852-
int64_to_intn_2(i64, tmp_buf1, b1_sign);
852+
intn_from_int64(i64, tmp_buf1, b1_sign);
853853
*b1 = tmp_buf1;
854854
*b1_len = INTN_INT64_LEN;
855855
}
@@ -887,7 +887,7 @@ static term mul_maybe_bigint(Context *ctx, uint32_t fail_label, uint32_t live, t
887887

888888
intn_digit_t bigres[INTN_MAX_RES_LEN];
889889
intn_integer_sign_t res_sign;
890-
intn_mulmn(bn1, bn1_len, bn1_sign, bn2, bn2_len, bn2_sign, bigres, &res_sign);
890+
intn_mul(bn1, bn1_len, bn1_sign, bn2, bn2_len, bn2_sign, bigres, &res_sign);
891891

892892
return make_bigint(ctx, fail_label, live, bigres, bigres_len, res_sign);
893893
}
@@ -1055,15 +1055,15 @@ static term div_maybe_bigint(Context *ctx, uint32_t fail_label, uint32_t live, t
10551055

10561056
intn_digit_t bigres[INTN_MAX_RES_LEN];
10571057
intn_integer_sign_t res_sign;
1058-
size_t bigres_len = intn_divmn(bn1, bn1_len, bn1_sign, bn2, bn2_len, bn2_sign, bigres, &res_sign, NULL, NULL);
1058+
size_t bigres_len = intn_div(bn1, bn1_len, bn1_sign, bn2, bn2_len, bn2_sign, bigres, &res_sign, NULL, NULL);
10591059

10601060
return make_bigint(ctx, fail_label, live, bigres, bigres_len, res_sign);
10611061
}
10621062

10631063
static term int64_max_plus_one(Context *ctx, uint32_t fail_label, uint32_t live)
10641064
{
10651065
intn_digit_t int_buf[INTN_UINT64_LEN];
1066-
intn_u64_to_digits(((uint64_t) INT64_MAX) + 1, int_buf);
1066+
intn_from_uint64(((uint64_t) INT64_MAX) + 1, int_buf);
10671067
return make_bigint(ctx, fail_label, live, int_buf, INTN_UINT64_LEN, IntNPositiveInteger);
10681068
}
10691069

@@ -1377,7 +1377,7 @@ static term rem_maybe_bigint(Context *ctx, uint32_t fail_label, uint32_t live, t
13771377
intn_digit_t q[INTN_MAX_RES_LEN];
13781378
intn_digit_t bigres[INTN_MAX_RES_LEN];
13791379
size_t bigres_len;
1380-
intn_divmnu(bn1, bn1_len, bn2, bn2_len, q, bigres, &bigres_len);
1380+
intn_divu(bn1, bn1_len, bn2, bn2_len, q, bigres, &bigres_len);
13811381

13821382
return make_bigint(ctx, fail_label, live, bigres, bigres_len, bn1_sign);
13831383
}
@@ -1649,7 +1649,7 @@ term bif_erlang_bor_2(Context *ctx, uint32_t fail_label, int live, term arg1, te
16491649
if (LIKELY(term_is_integer(arg1) && term_is_integer(arg2))) {
16501650
return arg1 | arg2;
16511651
} else {
1652-
return bitwise_helper(ctx, fail_label, live, arg1, arg2, bor, intn_bormn);
1652+
return bitwise_helper(ctx, fail_label, live, arg1, arg2, bor, intn_bor);
16531653
}
16541654
}
16551655

@@ -1663,7 +1663,7 @@ term bif_erlang_band_2(Context *ctx, uint32_t fail_label, int live, term arg1, t
16631663
if (LIKELY(term_is_integer(arg1) && term_is_integer(arg2))) {
16641664
return arg1 & arg2;
16651665
} else {
1666-
return bitwise_helper(ctx, fail_label, live, arg1, arg2, band, intn_bandmn);
1666+
return bitwise_helper(ctx, fail_label, live, arg1, arg2, band, intn_band);
16671667
}
16681668
}
16691669

@@ -1677,7 +1677,7 @@ term bif_erlang_bxor_2(Context *ctx, uint32_t fail_label, int live, term arg1, t
16771677
if (LIKELY(term_is_integer(arg1) && term_is_integer(arg2))) {
16781678
return (arg1 ^ arg2) | TERM_INTEGER_TAG;
16791679
} else {
1680-
return bitwise_helper(ctx, fail_label, live, arg1, arg2, bxor, intn_bxormn);
1680+
return bitwise_helper(ctx, fail_label, live, arg1, arg2, bxor, intn_bxor);
16811681
}
16821682
}
16831683

src/libAtomVM/intn.c

Lines changed: 26 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ static void mulmnu32(const uint32_t u[], size_t m, const uint32_t v[], size_t n,
122122
*/
123123
}
124124

125-
void intn_mulmnu(const uint32_t m[], size_t m_len, const uint32_t n[], size_t n_len, uint32_t out[])
125+
void intn_mulu(const uint32_t m[], size_t m_len, const uint32_t n[], size_t n_len, uint32_t out[])
126126
{
127127
mulmnu32(m, m_len, n, n_len, out);
128128
}
@@ -175,7 +175,7 @@ static void mulmnu16(const uint16_t u[], size_t m, const uint16_t v[], size_t n,
175175
*/
176176
}
177177

178-
void intn_mulmnu(const uint32_t m[], size_t m_len, const uint32_t n[], size_t n_len, uint32_t out[])
178+
void intn_mulu(const uint32_t m[], size_t m_len, const uint32_t n[], size_t n_len, uint32_t out[])
179179
{
180180
#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
181181
mulmnu16((const uint16_t *) m, m_len * 2, (const uint16_t *) n, n_len * 2, (uint16_t *) out);
@@ -192,13 +192,13 @@ void intn_mul_int64(int64_t num1, int64_t num2, intn_digit_t *out, intn_integer_
192192
{
193193
intn_digit_t u[2];
194194
intn_integer_sign_t u_sign;
195-
int64_to_intn_2(num1, u, &u_sign);
195+
intn_from_int64(num1, u, &u_sign);
196196
intn_digit_t v[2];
197197
intn_integer_sign_t v_sign;
198-
int64_to_intn_2(num2, v, &v_sign);
198+
intn_from_int64(num2, v, &v_sign);
199199

200200
*out_sign = intn_muldiv_sign(u_sign, v_sign);
201-
intn_mulmnu(u, 2, v, 2, (uint32_t *) out);
201+
intn_mulu(u, 2, v, 2, (uint32_t *) out);
202202
}
203203

204204
/*
@@ -384,7 +384,7 @@ static void big_endian_uint16_to_digit_in_place(uint16_t num16[], size_t len16)
384384
}
385385
#endif
386386

387-
size_t intn_divmnu(const intn_digit_t m[], size_t m_len, const intn_digit_t n[], size_t n_len,
387+
size_t intn_divu(const intn_digit_t m[], size_t m_len, const intn_digit_t n[], size_t n_len,
388388
intn_digit_t q_out[], intn_digit_t r_out[], size_t *r_out_len)
389389
{
390390
uint16_t *u;
@@ -458,7 +458,7 @@ int intn_cmp(const intn_digit_t a[], size_t a_len, const intn_digit_t b[], size_
458458
return 0;
459459
}
460460

461-
size_t intn_addmnu(
461+
size_t intn_addu(
462462
const intn_digit_t a[], size_t a_len, const intn_digit_t b[], size_t b_len, intn_digit_t out[])
463463
{
464464
size_t n = MIN(a_len, b_len);
@@ -502,7 +502,7 @@ size_t intn_addmnu(
502502
return i;
503503
}
504504

505-
size_t intn_addmn(const intn_digit_t m[], size_t m_len, intn_integer_sign_t m_sign,
505+
size_t intn_add(const intn_digit_t m[], size_t m_len, intn_integer_sign_t m_sign,
506506
const intn_digit_t n[], size_t n_len, intn_integer_sign_t n_sign, intn_digit_t out[],
507507
intn_integer_sign_t *out_sign)
508508
{
@@ -511,19 +511,19 @@ size_t intn_addmn(const intn_digit_t m[], size_t m_len, intn_integer_sign_t m_si
511511
// Case 1: Same sign - add magnitudes, keep sign
512512
if (m_sign == n_sign) {
513513
*out_sign = m_sign;
514-
result_len = intn_addmnu(m, m_len, n, n_len, out);
514+
result_len = intn_addu(m, m_len, n, n_len, out);
515515
}
516516
// Case 2: Different signs - subtract smaller from larger
517517
else {
518518
int cmp = intn_cmp(m, m_len, n, n_len);
519519
if (cmp >= 0) {
520520
// |m| >= |n|, result takes sign of m
521521
*out_sign = m_sign;
522-
result_len = intn_submnu(m, m_len, n, n_len, out);
522+
result_len = intn_subu(m, m_len, n, n_len, out);
523523
} else {
524524
// |m| < |n|, result takes sign of n
525525
*out_sign = n_sign;
526-
result_len = intn_submnu(n, n_len, m, m_len, out);
526+
result_len = intn_subu(n, n_len, m, m_len, out);
527527
}
528528
}
529529

@@ -539,17 +539,17 @@ size_t intn_add_int64(int64_t num1, int64_t num2, intn_digit_t *out, intn_intege
539539
{
540540
intn_digit_t u[2];
541541
intn_integer_sign_t u_sign;
542-
int64_to_intn_2(num1, u, &u_sign);
542+
intn_from_int64(num1, u, &u_sign);
543543
intn_digit_t v[2];
544544
intn_integer_sign_t v_sign;
545-
int64_to_intn_2(num2, v, &v_sign);
545+
intn_from_int64(num2, v, &v_sign);
546546

547-
return intn_addmn(u, 2, u_sign, v, 2, v_sign, out, out_sign);
547+
return intn_add(u, 2, u_sign, v, 2, v_sign, out, out_sign);
548548
}
549549

550550
// This function assumes a >= b
551551
// Caller must ensure this precondition
552-
size_t intn_submnu(
552+
size_t intn_subu(
553553
const intn_digit_t a[], size_t a_len, const intn_digit_t b[], size_t b_len, intn_digit_t out[])
554554
{
555555
uint32_t borrow = 0;
@@ -570,25 +570,25 @@ size_t intn_submnu(
570570
return i;
571571
}
572572

573-
size_t intn_submn(const intn_digit_t m[], size_t m_len, intn_integer_sign_t m_sign,
573+
size_t intn_sub(const intn_digit_t m[], size_t m_len, intn_integer_sign_t m_sign,
574574
const intn_digit_t n[], size_t n_len, intn_integer_sign_t n_sign, intn_digit_t out[],
575575
intn_integer_sign_t *out_sign)
576576
{
577577
// m - n = m + (-n)
578578
// Just flip the sign of n and call addition
579-
return intn_addmn(m, m_len, m_sign, n, n_len, intn_negate_sign(n_sign), out, out_sign);
579+
return intn_add(m, m_len, m_sign, n, n_len, intn_negate_sign(n_sign), out, out_sign);
580580
}
581581

582582
size_t intn_sub_int64(int64_t num1, int64_t num2, intn_digit_t *out, intn_integer_sign_t *out_sign)
583583
{
584584
intn_digit_t u[2];
585585
intn_integer_sign_t u_sign;
586-
int64_to_intn_2(num1, u, &u_sign);
586+
intn_from_int64(num1, u, &u_sign);
587587
intn_digit_t v[2];
588588
intn_integer_sign_t v_sign;
589-
int64_to_intn_2(num2, v, &v_sign);
589+
intn_from_int64(num2, v, &v_sign);
590590

591-
return intn_submn(u, 2, u_sign, v, 2, v_sign, out, out_sign);
591+
return intn_sub(u, 2, u_sign, v, 2, v_sign, out, out_sign);
592592
}
593593

594594
static void neg(const intn_digit_t in[], size_t in_len, intn_digit_t out[])
@@ -692,7 +692,7 @@ static inline intn_digit_t digit_bor(intn_digit_t a, intn_digit_t b)
692692
return a | b;
693693
}
694694

695-
size_t intn_bormn(const intn_digit_t m[], size_t m_len, intn_integer_sign_t m_sign,
695+
size_t intn_bor(const intn_digit_t m[], size_t m_len, intn_integer_sign_t m_sign,
696696
const intn_digit_t n[], size_t n_len, intn_integer_sign_t n_sign, intn_digit_t out[],
697697
intn_integer_sign_t *out_sign)
698698
{
@@ -719,7 +719,7 @@ static inline intn_digit_t digit_band(intn_digit_t a, intn_digit_t b)
719719
return a & b;
720720
}
721721

722-
size_t intn_bandmn(const intn_digit_t m[], size_t m_len, intn_integer_sign_t m_sign,
722+
size_t intn_band(const intn_digit_t m[], size_t m_len, intn_integer_sign_t m_sign,
723723
const intn_digit_t n[], size_t n_len, intn_integer_sign_t n_sign, intn_digit_t out[],
724724
intn_integer_sign_t *out_sign)
725725
{
@@ -746,7 +746,7 @@ static inline intn_digit_t digit_bxor(intn_digit_t a, intn_digit_t b)
746746
return a ^ b;
747747
}
748748

749-
size_t intn_bxormn(const intn_digit_t m[], size_t m_len, intn_integer_sign_t m_sign,
749+
size_t intn_bxor(const intn_digit_t m[], size_t m_len, intn_integer_sign_t m_sign,
750750
const intn_digit_t n[], size_t n_len, intn_integer_sign_t n_sign, intn_digit_t out[],
751751
intn_integer_sign_t *out_sign)
752752
{
@@ -1113,7 +1113,7 @@ int intn_parse(
11131113
intn_digit_t mult[2];
11141114
ipow(base, parsed_digits, mult);
11151115
// TODO: check overflows
1116-
intn_mulmnu(out, out_len, mult, 2, new_out);
1116+
intn_mulu(out, out_len, mult, 2, new_out);
11171117
new_out_len = MAX(2, intn_count_digits(new_out, INTN_MUL_OUT_LEN(out_len, 2)));
11181118
if (UNLIKELY(out_len > INTN_MAX_IN_LEN)) {
11191119
assert(out_len <= INTN_MAX_RES_LEN);
@@ -1125,9 +1125,9 @@ int intn_parse(
11251125

11261126
intn_integer_sign_t ignored_sign;
11271127
intn_digit_t parsed_as_intn[2];
1128-
int64_to_intn_2(parsed_chunk, parsed_as_intn, &ignored_sign);
1128+
intn_from_int64(parsed_chunk, parsed_as_intn, &ignored_sign);
11291129

1130-
out_len = intn_addmnu(new_out, new_out_len, parsed_as_intn, 2, out);
1130+
out_len = intn_addu(new_out, new_out_len, parsed_as_intn, 2, out);
11311131
if (UNLIKELY(out_len > INTN_MAX_IN_LEN)) {
11321132
assert(out_len <= INTN_MAX_RES_LEN);
11331133
// we are above the allowed 256 bits, so it is going to be overflow

0 commit comments

Comments
 (0)