Interesting… Control point 3 in “ _num” is this C code:
___DEF_SLBL(3,___L3__20___num) ___SET_GLO(341,___G__23__23_reciprocal_2d_cache,___R1) ___SET_R1(___FIXQUO(___GLO__23__23_bignum_2e_mdigit_2d_width,___FIX(2L))) ___SET_GLO(69,___G__23__23_bignum_2e_mdigit_2d_width_2f_2,___R1) ___SET_R1(___FIXMUL(___GLO__23__23_bignum_2e_mdigit_2d_base,___FIX(16L))) ___SET_GLO(59,___G__23__23_bignum_2e_mdigit_2d_base_2a_16,___R1) ___SET_GLO(389,___G_default_2d_random_2d_source,___FAL) ___SET_R0(___LBL(4)) ___JUMPINT(___SET_NARGS(0),___PRC(4200),___L__23__23_make_2d_random_2d_source_2d_mrg32k3a)
Which is the part of _num.scm that initializes the random number generator, near the end of _num.scm . So it shouldn’t be too long to single step the code starting at ___L3__20___num to see at which point the wrong pc is being generated.
Can you do this? Probably single stepping the machine code will give the most useful information.
Marc
On Apr 6, 2016, at 10:59 PM, Bradley Lucier lucier@math.purdue.edu wrote:
The result:
heine:~/programs/gambit/gambit> gdb gsi/gsi GNU gdb (Ubuntu 7.10-1ubuntu2) 7.10 Copyright (C) 2015 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-linux-gnu". Type "show configuration" for configuration details. For bug reporting instructions, please see: http://www.gnu.org/software/gdb/bugs/. Find the GDB manual and other documentation resources online at: http://www.gnu.org/software/gdb/documentation/. For help, type "help". Type "apropos word" to search for commands related to "word"... Reading symbols from gsi/gsi...done. (gdb) run Starting program: /home/lucier/programs/gambit/gambit/gsi/gsi [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". control point 0 in _kernel control point 0 in _system control point 6 in ##load-required-module-structs control point 0 in _num control point 0 in ##make-table control point 3 in _num *** incorrect ___pc was returned
It was compiled with ---enable-single-host, so I don’t know what you expected.
Brad