1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-21 19:20:21 +02:00

Add new extensive float comparison and conversion test case

* check/float.ok, check/float.tst: New test cases implementing
	extensive validation of float comparison and branch code
	generation as well as integer conversion, involving NaN and
	[+-]Inf.

	* lib/jit_arm-swf.c, lib/jit_x86-sse.c, lib/jit_x86-x87.c:
	Correct bugs found by new float test case.

	* lib/jit_x86.c: Correct cut&paste error added in commit to
	convert jit_arg* return value to a jit_node_t*,	that would
	cause it to not properly handle double arguments in ix86.

	* check/Makefile.am: Update for the new test case.
This commit is contained in:
pcpa 2012-12-29 14:16:45 -02:00
parent 2e6c680d70
commit 6eab5be9c2
9 changed files with 375 additions and 18 deletions

View file

@ -480,11 +480,7 @@ _jit_arg_d(jit_state_t *_jit)
#endif
{
offset = _jit->function->self.size;
#if __WORDSIZE == 32
_jit->function->self.size += sizeof(jit_float32_t);
#else
_jit->function->self.size += sizeof(jit_float64_t);
#endif
}
return (jit_new_node_w(jit_code_arg_d, offset));
}