[fpc-pascal] Compiling arm-embedded fpc

Jeppe Græsdal Johansen jjohan07 at student.aau.dk
Thu Jan 24 11:24:58 CET 2013


Looks like a memory corruption problem. I just tried to compile trunk 
with 2.6.0 as a starting compiler on win32 and had no problems(apart 
from the broken RTL).

What starting compiler and what os/cpu are you on?

Den 23-01-2013 19:28, Koenraad Lelong skrev:
> On 23-01-13 17:20, Tomas Hajny wrote:
>> OPT=-gl -Xs-
>
> Thanks, I comiled this way :
>
> make clean buildbase installbase "OPT=-gl -Xs- -O-" CROSSINSTALL=1 
> OS_TARGET=embedded CPU_TARGET=arm SUBARCH=armv7
>
> That gives this :
>
> > gdb --args ../../compiler/ppcrossarm -Cparmv7m @rtl.cfg -Ur 
> -Tembedded -Parm -XParm-embedded- -Xr -Ur -Xs -O2 -n -Fi../inc 
> -Fi../arm -FE. 
> -FU/home/koenraad/Documenten/fpc-20130123/rtl/units/arm-embedded -darm 
> -dRELEASE  -Us -Sg system.pp
> ...
> Reading symbols from 
> /home/koenraad/Documenten/fpc-20130123/compiler/ppcrossarm...done.
> (gdb) run
> Starting program: 
> /home/koenraad/Documenten/fpc-20130123/compiler/ppcrossarm -Cparmv7m 
> @rtl.cfg -Ur -Tembedded -Parm -XParm-embedded- -Xr -Ur -Xs -O2 -n 
> -Fi../inc -Fi../arm -FE. 
> -FU/home/koenraad/Documenten/fpc-20130123/rtl/units/arm-embedded -darm 
> -dRELEASE -Us -Sg system.pp
>
> Program received signal SIGSEGV, Segmentation fault.
> 0x0000000000419bb0 in SYSGETMEM_FIXED (CHUNKSIZE=32) at 
> ../inc/heap.inc:977
> 977         pmc_next^.prev_fixed := nil;
> (gdb) bt
> #0  0x0000000000419bb0 in SYSGETMEM_FIXED (CHUNKSIZE=32) at 
> ../inc/heap.inc:977
> #1  0x0000000000419e38 in SYSGETMEM (SIZE=32) at ../inc/heap.inc:1072
> #2  0x000000000041877d in GETMEM (P=0x7ffff74521c0, SIZE=24) at 
> ../inc/heap.inc:276
> #3  0x0000000000411f1c in NEWINSTANCE (self=0x900180) at 
> ../inc/objpas.inc:355
> warning: Range for type (null) has invalid bounds 0..-107
> warning: Range for type (null) has invalid bounds 0..-2
> warning: Range for type (null) has invalid bounds 1..-127
> #4  0x000000000045f9da in CREATE (this=0x0, vmt=0x900180, INITSIZE=9) 
> at cclasses.pas:2985
> #5  0x00000000004daf33 in SET_LIVE_RANGE_DIRECTION 
> (this=0x7ffff755d300, DIR=RAD_BACKWARDS) at rgobj.pas:723
> #6  0x00000000004d3fa3 in SET_REGALLOC_LIVE_RANGE_DIRECTION 
> (this=0x7ffff741a000, DIR=RAD_BACKWARDS) at cgobj.pas:775
> #7  0x000000000056d830 in GENERATE_CODE (this=0x7ffff7b161c0) at 
> psub.pas:1325
> #8  0x000000000056cc95 in GENERATE_CODE_TREE (this=0x7ffff7b161c0) at 
> psub.pas:1023
> #9  0x000000000056ed82 in READ_PROC_BODY 
> (OLD_CURRENT_PROCINFO=0x7ffff7b16040, PD=0x7ffff7fcedb0) at psub.pas:1865
> #10 0x000000000056f297 in READ_PROC (ISCLASSMETHOD=false, USEFWPD=0x0) 
> at psub.pas:1996
> #11 0x000000000056f79d in READ_DECLARATIONS (ISLIBRARY=false) at 
> psub.pas:2120
> #12 0x000000000056a6b5 in BLOCK (ISLIBRARY=false) at psub.pas:279
> #13 0x000000000056e6c7 in PARSE_BODY (this=0x7ffff7b16040) at 
> psub.pas:1693
> #14 0x00000000005e477b in PROC_UNIT () at pmodules.pas:944
> #15 0x00000000005c8cf9 in COMPILE (FILENAME=...) at parser.pas:347
> #16 0x000000000042a3d8 in COMPILE (CMD=0x0) at compiler.pas:255
> #17 0x000000000040041a in main () at pp.pas:239
> (gdb)
>
> Anyone can help ?
>
> Regards,
>
> Koenraad Lelong
>
> _______________________________________________
> fpc-pascal maillist  -  fpc-pascal at lists.freepascal.org
> http://lists.freepascal.org/mailman/listinfo/fpc-pascal




More information about the fpc-pascal mailing list