Branch: Tag:

2000-07-28

2000-07-28 17:16:56 by Fredrik Hübinette (Hubbe) <hubbe@hubbe.net>

JUMBOPATCH: dynamic loading now works on Win* !!!! (somewhat experimental :)

Rev: src/.cvsignore:1.24
Rev: src/Makefile.in:1.198
Rev: src/aclocal.m4:1.17
Rev: src/array.c:1.79
Rev: src/array.h:1.22
Rev: src/backend.c:1.53
Rev: src/backend.h:1.9
Rev: src/bignum.c:1.17
Rev: src/bignum.h:1.14
Rev: src/builtin_functions.c:1.293
Rev: src/builtin_functions.h:1.14
Rev: src/callback.c:1.20
Rev: src/configure.in:1.387
Rev: src/constants.c:1.22
Rev: src/dynamic_buffer.c:1.10
Rev: src/dynamic_load.c:1.41
Rev: src/error.c:1.56
Rev: src/error.h:1.46
Rev: src/fd_control.c:1.32
Rev: src/fdlib.c:1.37
Rev: src/fdlib.h:1.34
Rev: src/fsort.c:1.13
Rev: src/fsort_template.h:1.7
Rev: src/gc.c:1.110
Rev: src/gc.h:1.57
Rev: src/global.h:1.44
Rev: src/interpret.c:1.158
Rev: src/interpret.h:1.52
Rev: src/main.c:1.94
Rev: src/mapping.c:1.94
Rev: src/mapping.h:1.28
Rev: src/module_magic.h:1.1
Rev: src/module_support.c:1.34
Rev: src/module_support.h:1.7
Rev: src/multiset.c:1.26
Rev: src/object.c:1.137
Rev: src/object.h:1.50
Rev: src/opcodes.c:1.78
Rev: src/operators.c:1.93
Rev: src/operators.h:1.8
Rev: src/pike_macros.h:1.17
Rev: src/pike_memory.c:1.71
Rev: src/pike_memory.h:1.14
Rev: src/pike_types.c:1.132
Rev: src/port.c:1.28
Rev: src/precompile.sh.in:1.2
Rev: src/program.c:1.252
Rev: src/program.h:1.97
Rev: src/signal_handler.c:1.173
Rev: src/stralloc.c:1.85
Rev: src/stralloc.h:1.42
Rev: src/stuff.c:1.11
Rev: src/svalue.c:1.85
Rev: src/svalue.h:1.62
Rev: src/testsuite.in:1.316
Rev: src/threads.c:1.133
Rev: src/threads.h:1.99

10:      struct svalue auto_bignum_program = { T_INT };    - int gmp_library_loaded=0; + PMOD_EXPORT int gmp_library_loaded=0;   int gmp_library_resolving=0;      static void resolve_auto_bignum_program(void)
34:    }   }    - struct program *get_auto_bignum_program(void) + PMOD_EXPORT struct program *get_auto_bignum_program(void)   {    resolve_auto_bignum_program();    return program_from_function(&auto_bignum_program);   }    - struct program *get_auto_bignum_program_or_zero(void) + PMOD_EXPORT struct program *get_auto_bignum_program_or_zero(void)   {    if(!gmp_library_loaded ||    gmp_library_resolving ||
55:    auto_bignum_program.type=T_INT;   }    - void convert_stack_top_to_bignum(void) + PMOD_EXPORT void convert_stack_top_to_bignum(void)   {    resolve_auto_bignum_program();    apply_svalue(&auto_bignum_program, 1);
64:    error("Gmp.mpz conversion failed.\n");   }    - void convert_stack_top_with_base_to_bignum(void) + PMOD_EXPORT void convert_stack_top_with_base_to_bignum(void)   {    resolve_auto_bignum_program();    apply_svalue(&auto_bignum_program, 2);
90:    return o->prog == program_from_function(&auto_bignum_program);   }    - int is_bignum_object_in_svalue(struct svalue *sv) + PMOD_EXPORT int is_bignum_object_in_svalue(struct svalue *sv)   {    return sv->type == T_OBJECT && is_bignum_object(sv->u.object);   }    - struct object *make_bignum_object(void) + PMOD_EXPORT struct object *make_bignum_object(void)   {    convert_stack_top_to_bignum();    return (--sp)->u.object;   }    - struct object *bignum_from_svalue(struct svalue *s) + PMOD_EXPORT struct object *bignum_from_svalue(struct svalue *s)   {    push_svalue(s);    convert_stack_top_to_bignum();    return (--sp)->u.object;   }    - struct pike_string *string_from_bignum(struct object *o, int base) + PMOD_EXPORT struct pike_string *string_from_bignum(struct object *o, int base)   {    push_int(base);    safe_apply(o, "digits", 1);
119:    return (--sp)->u.string;   }    - void convert_svalue_to_bignum(struct svalue *s) + PMOD_EXPORT void convert_svalue_to_bignum(struct svalue *s)   {    push_svalue(s);    convert_stack_top_to_bignum();
135:   #define BIGNUM_INT64_MASK 0xffff   #define BIGNUM_INT64_SHIFT 16    - void push_int64(INT64 i) + PMOD_EXPORT void push_int64(INT64 i)   {    if(i == (INT_TYPE)i)    {
181:    }   }    - int int64_from_bignum(INT64 *i, struct object *bignum) + PMOD_EXPORT int int64_from_bignum(INT64 *i, struct object *bignum)   {    int neg, pos, rshfun, andfun;