Hi, Based on trunk r21549, I have uploaded all my patches to my branch, please help to review and merge if possible.
svn log --stop-on-copy http://svn.freepascal.org/svn/fpc/branches/foxsen/mips : ------------------------------------------------------------------------ r21564 | foxsen | 2012-06-09 17:01:14 +0800 (六, 2012-06-09) | 2 行 mips C_alignment is incorrect, hack for now ------------------------------------------------------------------------ r21563 | foxsen | 2012-06-09 16:52:24 +0800 (六, 2012-06-09) | 5 行 remove macros already by common code: FPC_HAS_TYPE_DOUBLE FPC_HAS_TYPE_SINGLE FPC_REQUIRES_PROPER_ALIGNMENT ------------------------------------------------------------------------ r21562 | foxsen | 2012-06-09 16:50:04 +0800 (六, 2012-06-09) | 2 行 make the calling convention support MIPS O32 ABI ------------------------------------------------------------------------ r21561 | foxsen | 2012-06-09 11:32:24 +0800 (六, 2012-06-09) | 3 行 fix short/smallint operations without this test/cg/tcnvint6.pp failed at 31 ------------------------------------------------------------------------ r21560 | foxsen | 2012-06-09 11:23:50 +0800 (六, 2012-06-09) | 3 行 enable softfpu, default first_int_to_real depends on int64_to_float64/32 etc. It is needed by the patch of r21558 ------------------------------------------------------------------------ r21559 | foxsen | 2012-06-09 11:12:30 +0800 (六, 2012-06-09) | 3 行 set default round mode to round nearest instead of round to zero it fix test/cg/taddcurr.pp ------------------------------------------------------------------------ r21558 | foxsen | 2012-06-09 11:01:56 +0800 (六, 2012-06-09) | 3 行 use inherited first_int_to_real to avoid mixing doubles and singles it fixes the failure of test/cg/taddcurr.pp ------------------------------------------------------------------------ r21557 | foxsen | 2012-06-09 10:59:32 +0800 (六, 2012-06-09) | 4 行 Make macro MIPS/CPUMIPS/MIPS32 common for big endian and little endian mips processors use MIPSEL* for little endian systems use MIPSEB* for big endian systems ------------------------------------------------------------------------ r21554 | foxsen | 2012-06-08 23:56:28 +0800 (五, 2012-06-08) | 2 行 correct constant for mipsel ------------------------------------------------------------------------ r21553 | foxsen | 2012-06-08 23:50:04 +0800 (五, 2012-06-08) | 2 行 make clear what registers might need to be saved ------------------------------------------------------------------------ r21552 | foxsen | 2012-06-08 23:45:24 +0800 (五, 2012-06-08) | 3 行 use NR_R1 instead of NR_R3 for big stack adjustment temp register(R1 is $at, more suitable) use A_JR for register operands, although the assembler can translate J to JR when necessary, it is more clear ------------------------------------------------------------------------ r21551 | foxsen | 2012-06-08 23:37:18 +0800 (五, 2012-06-08) | 3 行 use cpu64bitaddr instead of cpu64bit fix wrong order of 64BIT return register(now for little endian mips) ------------------------------------------------------------------------ r21550 | foxsen | 2012-06-08 23:04:03 +0800 (五, 2012-06-08) | 2 行 merge trunk r21549 _______________________________________________ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel