1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-06 12:10:28 +02:00
guile/check
pcpa e304bc8bf9 Pass all but the (not yet implemented) qmul and qdiv tests in sparc
* check/float.tst: Add sparc to list of known NaN and +-Inf
	to integer conversion.

	* check/lightning.c: Define __sparc__ to preprocessor in
	the sparc backend.

	* include/lightning/jit_private.h: Correct wrong definition
	of emit_stxi_d, that has lived for a long time, but would
	cause problems whenever needing to spill/reload a float
	register.

	* include/lightning/jit_sparc.h: Can only use %g2,%g3,%g4
	for scratch variables, as other "global" registers are
	reserved for the system, e.g. libc.
	  Reorder float register naming to make it easier to
	access odd float registers, so that generating code for
	pusharg and getarg is easier for the IR.

	* lib/jit_mips-cpu.c, lib/jit_ppc-cpu.c: Update to match
	new code in jit_sparc-cpu.c. It must call jit_get_reg
	with jit_class_nospill if using the register to move
	an unconditional branch address to it, as the reload
	will not happen (actually could happen in the delay
	slot...)

	* lib/jit_sparc-cpu.c: Correct wrong macro definition for
	ldxr_s.
	  Properly implement div* and implement rem. Div* needs
	to use the y register, and rem* needs to be synthesized.
	  Correct b?sub* macro definitions.

	* lib/jit_sparc-fpu.c: Correct reversed float to/from double
	conversion.
	  Correct wrong jit_get_reg call asking for a gpr and then
	using the fpr with that number.
	  Correct wrong branch displacement computation for
	conditional branches.

	* lib/jit_sparc.c: Correct getarg_d and pushargi_d implementation.
	  Add rem* entries to the switch converting IR to machine code.

	* lib/lightning.c: Correct a problem detected when adding
	the jit_class_nospill flag to jit_get_reg, that was caused
	when having a branch to an "epilog" node, what would cause
	the code to think all registers in unknown state were live,
	while in truth, all registers in unknown state in the
	"just after return" point are actually dead.
2013-02-19 01:06:18 -03:00
..
3to2.ok Big merge with new lightning semantics aiming for lightning 2.0. 2012-12-02 19:44:36 -02:00
3to2.tst Add the new jit_name call to mark function boundaries 2013-01-18 18:05:57 -02:00
add.ok Big merge with new lightning semantics aiming for lightning 2.0. 2012-12-02 19:44:36 -02:00
add.tst Add the new jit_name call to mark function boundaries 2013-01-18 18:05:57 -02:00
all.tst Implement the qmul and qdiv instructions. 2013-02-04 18:54:37 -02:00
allocai.ok Big merge with new lightning semantics aiming for lightning 2.0. 2012-12-02 19:44:36 -02:00
allocai.tst Add the new jit_name call to mark function boundaries 2013-01-18 18:05:57 -02:00
alu.inc Add two extra test cases for float operations. 2012-12-17 17:55:38 -02:00
alu_add.ok Add several arithmetic and branch tests cases. 2012-12-09 19:13:33 -02:00
alu_add.tst Add jit_ellipis and remove jit_prepare argument. 2012-12-12 22:59:52 -02:00
alu_and.ok Add several arithmetic and branch tests cases. 2012-12-09 19:13:33 -02:00
alu_and.tst Add jit_ellipis and remove jit_prepare argument. 2012-12-12 22:59:52 -02:00
alu_com.ok Add several arithmetic and branch tests cases. 2012-12-09 19:13:33 -02:00
alu_com.tst Add jit_ellipis and remove jit_prepare argument. 2012-12-12 22:59:52 -02:00
alu_div.ok Add several arithmetic and branch tests cases. 2012-12-09 19:13:33 -02:00
alu_div.tst Add jit_ellipis and remove jit_prepare argument. 2012-12-12 22:59:52 -02:00
alu_lsh.ok Add several arithmetic and branch tests cases. 2012-12-09 19:13:33 -02:00
alu_lsh.tst Add jit_ellipis and remove jit_prepare argument. 2012-12-12 22:59:52 -02:00
alu_mul.ok Add several arithmetic and branch tests cases. 2012-12-09 19:13:33 -02:00
alu_mul.tst Add jit_ellipis and remove jit_prepare argument. 2012-12-12 22:59:52 -02:00
alu_neg.ok Add several arithmetic and branch tests cases. 2012-12-09 19:13:33 -02:00
alu_neg.tst Add jit_ellipis and remove jit_prepare argument. 2012-12-12 22:59:52 -02:00
alu_or.ok Add several arithmetic and branch tests cases. 2012-12-09 19:13:33 -02:00
alu_or.tst Add jit_ellipis and remove jit_prepare argument. 2012-12-12 22:59:52 -02:00
alu_rem.ok Add several arithmetic and branch tests cases. 2012-12-09 19:13:33 -02:00
alu_rem.tst Add jit_ellipis and remove jit_prepare argument. 2012-12-12 22:59:52 -02:00
alu_rsh.ok Add several arithmetic and branch tests cases. 2012-12-09 19:13:33 -02:00
alu_rsh.tst Add jit_ellipis and remove jit_prepare argument. 2012-12-12 22:59:52 -02:00
alu_sub.ok Add several arithmetic and branch tests cases. 2012-12-09 19:13:33 -02:00
alu_sub.tst Add jit_ellipis and remove jit_prepare argument. 2012-12-12 22:59:52 -02:00
alu_xor.ok Add several arithmetic and branch tests cases. 2012-12-09 19:13:33 -02:00
alu_xor.tst Add jit_ellipis and remove jit_prepare argument. 2012-12-12 22:59:52 -02:00
alux_add.ok Add several arithmetic and branch tests cases. 2012-12-09 19:13:33 -02:00
alux_add.tst Add jit_ellipis and remove jit_prepare argument. 2012-12-12 22:59:52 -02:00
alux_sub.ok Add several arithmetic and branch tests cases. 2012-12-09 19:13:33 -02:00
alux_sub.tst Add jit_ellipis and remove jit_prepare argument. 2012-12-12 22:59:52 -02:00
bp.ok Big merge with new lightning semantics aiming for lightning 2.0. 2012-12-02 19:44:36 -02:00
bp.tst Add the new jit_name call to mark function boundaries 2013-01-18 18:05:57 -02:00
branch.ok Add several arithmetic and branch tests cases. 2012-12-09 19:13:33 -02:00
branch.tst Correct wrong and confusing reverse float comparison logic 2012-12-29 18:55:11 -02:00
call.ok Add simple test case to test argument and return values. 2012-12-23 20:28:05 -02:00
call.tst Add the new jit_name call to mark function boundaries 2013-01-18 18:05:57 -02:00
carry.ok Add new carry test case. 2012-12-23 11:51:41 -02:00
carry.tst Add new carry test case. 2012-12-23 11:51:41 -02:00
ccall.c Add code to release all memory used by the jit state. 2013-02-11 15:51:55 -02:00
ccall.ok Add the new ccall test case to test interleaved C and jit function calls 2013-01-05 16:14:59 -02:00
check.arm.sh Add support to test different/alternate code generation setups. 2012-12-14 22:40:08 -02:00
check.sh Correct make distcheck. 2012-12-03 07:26:40 -02:00
check.swf.sh Add support to test different/alternate code generation setups. 2012-12-14 22:40:08 -02:00
check.x87.sh Add support to test different/alternate code generation setups. 2012-12-14 22:40:08 -02:00
clobber.ok Add new register clobber detection test case. 2012-12-22 12:15:03 -02:00
clobber.tst Add the new jit_name call to mark function boundaries 2013-01-18 18:05:57 -02:00
cvt.ok Add new test case for int/float to/from conversion. 2012-12-06 15:16:23 -02:00
cvt.tst Add jit_ellipis and remove jit_prepare argument. 2012-12-12 22:59:52 -02:00
divi.ok Big merge with new lightning semantics aiming for lightning 2.0. 2012-12-02 19:44:36 -02:00
divi.tst Add the new jit_name call to mark function boundaries 2013-01-18 18:05:57 -02:00
fib.ok Big merge with new lightning semantics aiming for lightning 2.0. 2012-12-02 19:44:36 -02:00
fib.tst Add the new jit_name call to mark function boundaries 2013-01-18 18:05:57 -02:00
float.ok Add new extensive float comparison and conversion test case 2012-12-29 14:16:45 -02:00
float.tst Pass all but the (not yet implemented) qmul and qdiv tests in sparc 2013-02-19 01:06:18 -03:00
fop_abs.ok Add two extra test cases for float operations. 2012-12-17 17:55:38 -02:00
fop_abs.tst Add two extra test cases for float operations. 2012-12-17 17:55:38 -02:00
fop_sqrt.ok Add two extra test cases for float operations. 2012-12-17 17:55:38 -02:00
fop_sqrt.tst Add two extra test cases for float operations. 2012-12-17 17:55:38 -02:00
ldst.inc Add new ldst variant test cases to check base/index register clobber. 2012-12-06 10:00:30 -02:00
ldsti.ok Add new test cases to exercise memory load/store. 2012-12-05 15:57:33 -02:00
ldsti.tst Add the new jit_name call to mark function boundaries 2013-01-18 18:05:57 -02:00
ldstr-c.ok Add new ldst variant test cases to check base/index register clobber. 2012-12-06 10:00:30 -02:00
ldstr-c.tst Add the new jit_name call to mark function boundaries 2013-01-18 18:05:57 -02:00
ldstr.ok Add new test cases to exercise memory load/store. 2012-12-05 15:57:33 -02:00
ldstr.tst Add the new jit_name call to mark function boundaries 2013-01-18 18:05:57 -02:00
ldstxi-c.ok Add new ldst variant test cases to check base/index register clobber. 2012-12-06 10:00:30 -02:00
ldstxi-c.tst Add the new jit_name call to mark function boundaries 2013-01-18 18:05:57 -02:00
ldstxi.ok Add new test cases to exercise memory load/store. 2012-12-05 15:57:33 -02:00
ldstxi.tst Add the new jit_name call to mark function boundaries 2013-01-18 18:05:57 -02:00
ldstxr-c.ok Add new ldst variant test cases to check base/index register clobber. 2012-12-06 10:00:30 -02:00
ldstxr-c.tst Add the new jit_name call to mark function boundaries 2013-01-18 18:05:57 -02:00
ldstxr.ok Add new test cases to exercise memory load/store. 2012-12-05 15:57:33 -02:00
ldstxr.tst Add the new jit_name call to mark function boundaries 2013-01-18 18:05:57 -02:00
lightning.c Pass all but the (not yet implemented) qmul and qdiv tests in sparc 2013-02-19 01:06:18 -03:00
Makefile.am Implement the "live" code to explicitly tell a register is live. 2013-02-05 14:14:25 -02:00
qalu.inc Implement the qmul and qdiv instructions. 2013-02-04 18:54:37 -02:00
qalu_div.ok Implement the qmul and qdiv instructions. 2013-02-04 18:54:37 -02:00
qalu_div.tst Implement the qmul and qdiv instructions. 2013-02-04 18:54:37 -02:00
qalu_mul.ok Implement the qmul and qdiv instructions. 2013-02-04 18:54:37 -02:00
qalu_mul.tst Implement the qmul and qdiv instructions. 2013-02-04 18:54:37 -02:00
ret.ok Implement the "live" code to explicitly tell a register is live. 2013-02-05 14:14:25 -02:00
ret.tst Implement the "live" code to explicitly tell a register is live. 2013-02-05 14:14:25 -02:00
rpn.ok Correct integer multiplication and add extra test case. 2012-12-03 00:07:29 -02:00
rpn.tst Add the new jit_name call to mark function boundaries 2013-01-18 18:05:57 -02:00
run-test Add support to test different/alternate code generation setups. 2012-12-14 22:40:08 -02:00
stack.ok Add new test case to check stack integrity on complex stack frames. 2012-12-19 18:07:12 -02:00
stack.tst Add the new jit_name call to mark function boundaries 2013-01-18 18:05:57 -02:00
varargs.ok Add new varargs test and correct related test case failures in all ports. 2012-12-13 18:26:57 -02:00
varargs.tst Add the new jit_name call to mark function boundaries 2013-01-18 18:05:57 -02:00