0001-Fix-Name-Collision-With-LibTomMath-Funcs.patch 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. From ead5f4da759465cf6fc2ceab7c431d3550a3323f Mon Sep 17 00:00:00 2001
  2. From: Timo Paulssen <timonator@perpetuum-immobile.de>
  3. Date: Tue, 15 Jan 2019 12:35:56 +0100
  4. Subject: [PATCH] Fix Name Collision With Existing LibTomMath Function
  5. fixes #1032
  6. Upstream: https://github.com/MoarVM/MoarVM/commit/f7204a3ee5199dd70f26d6fe133008cc86c63bbe
  7. (backported mp_get_double() as other functions weren't yet used)
  8. Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
  9. ---
  10. src/math/bigintops.c | 12 ++++++------
  11. 1 file changed, 6 insertions(+), 6 deletions(-)
  12. diff --git a/src/math/bigintops.c b/src/math/bigintops.c
  13. index 2275593..8ab7ed6 100644
  14. --- a/src/math/bigintops.c
  15. +++ b/src/math/bigintops.c
  16. @@ -45,7 +45,7 @@ int MVM_bigint_mp_set_uint64(mp_int * a, MVMuint64 b) {
  17. return MP_OKAY;
  18. }
  19. -static MVMnum64 mp_get_double(mp_int *a) {
  20. +static MVMnum64 MVM_mp_get_double(mp_int *a) {
  21. MVMnum64 d = 0.0;
  22. MVMnum64 sign = SIGN(a) == MP_NEG ? -1.0 : 1.0;
  23. int i;
  24. @@ -680,8 +680,8 @@ MVMObject * MVM_bigint_pow(MVMThreadContext *tc, MVMObject *a, MVMObject *b,
  25. }
  26. }
  27. else {
  28. - MVMnum64 f_base = mp_get_double(base);
  29. - MVMnum64 f_exp = mp_get_double(exponent);
  30. + MVMnum64 f_base = MVM_mp_get_double(base);
  31. + MVMnum64 f_exp = MVM_mp_get_double(exponent);
  32. r = MVM_repr_box_num(tc, num_type, pow(f_base, f_exp));
  33. }
  34. clear_temp_bigints(tmp, 2);
  35. @@ -880,7 +880,7 @@ MVMnum64 MVM_bigint_to_num(MVMThreadContext *tc, MVMObject *a) {
  36. if (MVM_BIGINT_IS_BIG(ba)) {
  37. mp_int *ia = ba->u.bigint;
  38. - return mp_get_double(ia);
  39. + return MVM_mp_get_double(ia);
  40. } else {
  41. return (double)ba->u.smallint.value;
  42. }
  43. @@ -913,11 +913,11 @@ MVMnum64 MVM_bigint_div_num(MVMThreadContext *tc, MVMObject *a, MVMObject *b) {
  44. mp_init(&reduced_b);
  45. mp_div_2d(ia, max_size - 1023, &reduced_a, NULL);
  46. mp_div_2d(ib, max_size - 1023, &reduced_b, NULL);
  47. - c = mp_get_double(&reduced_a) / mp_get_double(&reduced_b);
  48. + c = MVM_mp_get_double(&reduced_a) / MVM_mp_get_double(&reduced_b);
  49. mp_clear(&reduced_a);
  50. mp_clear(&reduced_b);
  51. } else {
  52. - c = mp_get_double(ia) / mp_get_double(ib);
  53. + c = MVM_mp_get_double(ia) / MVM_mp_get_double(ib);
  54. }
  55. clear_temp_bigints(tmp, 2);
  56. } else {
  57. --
  58. 1.9.1