Jason Moxham on Mon, 06 Jul 2009 03:29:08 +0200


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

bug 828


Hi

I've been looking at bug 828 dynamic loading of a function in a static build of pari. Here is a guess based on my debug below , note the line numbers will not match as I added a bit debugging stuff

FILE ../src/kernel/none/level1.h LINE 109
FILE ../src/kernel/none/level1.h LINE 86 x is 1
avma=2147092636 bot=2143092744
FILE ../src/kernel/none/level1.h LINE 93
FILE ../src/kernel/none/level1.h LINE 98
FILE ../src/kernel/none/level1.h LINE 109
FILE ../src/language/eval.c LINE 715
avma=2147092632 bot=2143092744
FILE ../src/language/eval.c LINE 723 65
FILE ../src/language/eval.c LINE 724
avma=2147092632 bot=2143092744
FILE ../src/language/eval.c LINE 723 65
FILE ../src/language/eval.c LINE 724
avma=2147092632 bot=2143092744
FILE ../src/language/eval.c LINE 723 95
FILE ../src/language/eval.c LINE 724
FILE ../src/language/eval.c LINE 1073
FILE ../src/language/eval.c LINE 1074
avma=2147092632 bot=2143092744
&avma=0x797bb0 &bot=0x797c40
ep is 0x113f420
epval is 0x1a2483a0
FILE ../src/kernel/none/level1.h LINE 494
avma=0 bot=0
&avma=0x1a594918 &bot=0x1a5949a8
avma=0 bot=0
FILE ../src/kernel/none/add.c LINE 66
FILE ../src/kernel/none/add.c LINE 68
FILE ../src/kernel/none/add.c LINE 70
FILE ../src/kernel/none/add.c LINE 72
avma=0 bot=0
FILE ../src/kernel/none/add.c LINE 75
avma=0 bot=0
FILE ../src/kernel/none/mp.c LINE 175
avma=0 bot=0
FILE ../src/kernel/none/mp.c LINE 178
FILE ../src/kernel/none/mp.c LINE 135
avma=0 bot=0
avma=0 bot=0
FILE ../src/kernel/none/level1.h LINE 470
FILE ../src/kernel/none/level1.h LINE 247
FILE ../src/kernel/none/level1.h LINE 233
FILE ../src/kernel/none/level1.h LINE 225
FILE ../src/kernel/none/level1.h LINE 142
FILE ../src/kernel/none/level1.h LINE 131
FILE ../src/kernel/none/level1.h LINE 86 x is 3
avma=0 bot=0
FILE ../src/kernel/none/level1.h LINE 89
FILE ../src/language/init.c LINE 926
FILE ../src/language/init.c LINE 947
FILE ../src/language/init.c LINE 834
FILE ../src/language/init.c LINE 836
2 [main] gp-sta 5304 _cygtls::handle_exceptions: Error while dumping state
(probably corrupted stack)
Segmentation fault (core dumped)

It look like that when you load up the function addii from the dynamic library it also loads up another copy of the varibles avma and bot , which are then accessed and of course the values they have are garbage.

Jason