tclapi: Use older bignum API and handle external tommath for mac os

This commit is contained in:
Jannis Harder 2024-12-03 17:53:00 +01:00
parent f0704b6ede
commit cac6dd9bcb
2 changed files with 5 additions and 3 deletions

View File

@ -449,6 +449,9 @@ LIBS += -ltcl86 -lwsock32 -lws2_32 -lnetapi32 -lz -luserenv
else
CXXFLAGS += $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) $(PKG_CONFIG) --silence-errors --cflags tcl || echo -I$(TCL_INCLUDE)) -DYOSYS_ENABLE_TCL
LIBS += $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) $(PKG_CONFIG) --silence-errors --libs tcl || echo $(TCL_LIBS))
ifneq (,$(findstring TCL_WITH_EXTERNAL_TOMMATH,$(CXXFLAGS)))
LIBS += $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) $(PKG_CONFIG) --silence-errors --libs libtommath || echo)
endif
endif
endif

View File

@ -210,9 +210,8 @@ bool mp_int_to_const(mp_int *a, Const &b, bool is_signed)
}
std::vector<unsigned char> buf;
buf.resize(mp_ubin_size(a));
size_t written; // dummy
mp_to_ubin(a, buf.data(), buf.size(), &written);
buf.resize(mp_unsigned_bin_size(a));
mp_to_unsigned_bin(a, buf.data());
b.bits().reserve(mp_count_bits(a) + is_signed);
for (int i = 0; i < mp_count_bits(a);) {