[fpc-devel] MIPS big-endian program starts but does nothing

Michael Ring mail at michael-ring.org
Tue Sep 9 12:08:21 CEST 2014


This problem also looks similar, there are two procedures in setjump.inc 
and they both address the fpu:

     ctc1  $v0,$31

     cfc1  $v0,$31

Michael

Am 09.09.14 um 08:29 schrieb Reinier Olislagers:
> Applied a similar patch [1]; progress, thanks!
>
> gdb bt now shows:
> ^C
> Program received signal SIGINT, Interrupt.
> fpc_setjmp (S=
>        {RA = 4398704, SP = 2139211400, S0 = 2130823600, S1 = 5034972, S2
> = 5035028, S3 = 4571000, S4 = 2000557128, S5 = 4587520, S6 = 4589204, S7
> = 5034940, FP = 2139211632, GP = 4589264, _FCSR = 0, F20 = 0, F21 = 0,
> F22 = 0, F23 = 0, F24 = 0, F25 = 0, F26 = 4563944, F27 = 4, F28 =
> 4563944, F29 = 4563947, F30 = 0, F31 = 0}) at
> C:/development/fpctrunk/rtl/mips/setjump.inc:68
> 68      C:/development/fpctrunk/rtl/mips/setjump.inc: No such file or
> directory.
>          in C:/development/fpctrunk/rtl/mips/setjump.inc
> Current language:  auto; currently pascal
> (gdb) bt
> #0  fpc_setjmp (S=
>        {RA = 4398704, SP = 2139211400, S0 = 2130823600, S1 = 5034972, S2
> = 5035028, S3 = 4571000, S4 = 2000557128, S5 = 4587520, S6 = 4589204, S7
> = 5034940, FP = 2139211632, GP = 4589264, _FCSR = 0, F20 = 0, F21 = 0,
> F22 = 0, F23 = 0, F24 = 0, F25 = 0, F26 = 4563944, F27 = 4, F28 =
> 4563944, F29 = 4563947, F30 = 0, F31 = 0}) at
> C:/development/fpctrunk/rtl/mips/setjump.inc:68
> #1  0x00431e70 in ASSIGN (T=
>        {HANDLE = 0, MODE = 0, RECSIZE = 0, _PRIVATE = #0 <repeats 31
> times>, USERDATA = #0 <repeats 31 times>, NAME = #0 <repeats 255
> times>}, S=Cannot access memory at address 0xd7b1
> )
>      at C:/development/fpctrunk/rtl/inc/text.inc:127
> #2  0x00439edc in OPENSTDIO (F=Cannot access memory at address 0x0
> )
>      at C:/development/fpctrunk/rtl/inc/text.inc:2644
> #3  0x0043f09c in SYSINITSTDIO () at system.pp:276
> #4  0x0043f4d0 in SYSTEM_$$_init () at system.pp:364
> #5  0x00429c10 in fpc_initializeunits ()
>      at C:/development/fpctrunk/rtl/inc/system.inc:888
> #6  0x0040019c in main () at hellomips.lpr:16
>
>
>
> [1]
> Index: rtl/mips/mips.inc
> ===================================================================
> --- rtl/mips/mips.inc	(revision 28619)
> +++ rtl/mips/mips.inc	(working copy)
> @@ -58,7 +58,9 @@
>   {$define FPC_SYSTEM_HAS_SYSINITFPU}
>   procedure SysInitFPU;
>     begin
> +{$ifndef FPC_HAS_FEATURE_SOFTFPU}
>       set_fsr(get_fsr and (not fpu_all_bits) or (default_fpu_enable or
> fpu_rounding_nearest));
> +{$ENDIF FPC_HAS_FEATURE_SOFTFPU}
>     end;
>
>
>
> _______________________________________________
> fpc-devel maillist  -  fpc-devel at lists.freepascal.org
> http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel




More information about the fpc-devel mailing list