Project

General

Profile

Bug #8522 ยป bignum.c.bug8522.patch

drbrain (Eric Hodel), 06/13/2013 05:29 AM

View differences:

bignum.c (working copy)
}
static size_t
integer_unpack_num_bdigits_small(size_t numwords, size_t wordsize, size_t nails, int *nlp_bits_ret)
integer_unpack_num_bdigits_small(size_t numwords, size_t wordsize, size_t nails, size_t *nlp_bits_ret)
{
/* nlp_bits stands for number of leading padding bits */
size_t num_bits = (wordsize * CHAR_BIT - nails) * numwords;
......
}
static size_t
integer_unpack_num_bdigits_generic(size_t numwords, size_t wordsize, size_t nails, int *nlp_bits_ret)
integer_unpack_num_bdigits_generic(size_t numwords, size_t wordsize, size_t nails, size_t *nlp_bits_ret)
{
/* BITSPERDIG = SIZEOF_BDIGITS * CHAR_BIT */
/* num_bits = (wordsize * CHAR_BIT - nails) * numwords */
......
}
static VALUE
rb_integer_unpack_internal(const void *words, size_t numwords, size_t wordsize, size_t nails, int flags, int *nlp_bits_ret)
rb_integer_unpack_internal(const void *words, size_t numwords, size_t wordsize, size_t nails, int flags, size_t *nlp_bits_ret)
{
VALUE result;
const unsigned char *buf = words;
......
VALUE
rb_integer_unpack(const void *words, size_t numwords, size_t wordsize, size_t nails, int flags)
{
int nlp_bits;
size_t nlp_bits;
VALUE val;
validate_integer_pack_format(numwords, wordsize, nails, flags,
......
rb_integer_unpack_2comp(const void *words, size_t numwords, size_t wordsize, size_t nails, int flags)
{
VALUE val;
int nlp_bits;
size_t nlp_bits;
validate_integer_pack_format(numwords, wordsize, nails, flags,
INTEGER_PACK_MSWORD_FIRST|
    (1-1/1)