1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-29 16:30:19 +02:00
Mirror of the upstream GNU Guile repository on Savannah. https://www.gnu.org/software/guile/
Find a file
pcpa a04df966c0 Make all current test cases pass in Darwin PowerPC.
* lib/jit_ppc-cpu.c: Make movr a function that checks arguments
	so that other code can safely assume it is a noop if src and dst
	are the same register.
	  Implement rem{r,i}{,_u} as a div{,u}/mul/sub.
	  Correct ANDIS, ORIS and XORIS calls to cast the argument to
	unsigned before the shift to avoid an assertion if the argument
	had the topmost bit set.
	  Implement lshi, rshi and rshi_u as functions to test for a
	zero argument, that would otherwise trigger an assertion when
	computing the shift value.
	  Do a simple implementation of bm{s,c}{r,i} with a temporary,
	"andr" of arguments and jump based on comparison with zero.
	  Correct typo in ldxi_c.

	* lib/jit_ppc-fpu.c: Correct wrong arguments to FDIV* and STF*.

	* lib/jit_ppc.c: Correct wrong check for 6 instead of 8 integer
	arguments in registers. If calling a varargs function and
	passing a float or double argument, also either store the
	value in the stack or in integer registers, as varargs functions
	do not fetch it from float registers.
	  Add "case" for new functions and incorrectly missing ones.
	  Call libgcc's __clear_cache, that should know what to do
	if the hardware needs flushing cache before execution.

	* lib/lightning.c: Do a simple/trivial logic in jit_regset_scan1,
	that should make it easier for the compiler to optimize it, and
	that also corrects the previously wrong code for big endian, and
	that was causing problems in ppc due to not saving all callee save
	registers as it was not "finding" them in the regset due to the
	little endian assumption bug.
2012-12-11 13:14:09 -02:00
check Add several arithmetic and branch tests cases. 2012-12-09 19:13:33 -02:00
doc Correct make distcheck. 2012-12-03 07:26:40 -02:00
include Add better ppc support code, but still not functional. 2012-12-11 02:16:51 -02:00
lib Make all current test cases pass in Darwin PowerPC. 2012-12-11 13:14:09 -02:00
.gitattributes add .gitattributes file 2008-04-10 11:30:17 +02:00
.gitignore Add make rule to build test case dependencies. 2012-12-02 20:15:57 -02:00
AUTHORS give credit to whom credit is due 2008-01-09 15:50:04 +01:00
ChangeLog Make all current test cases pass in Darwin PowerPC. 2012-12-11 13:14:09 -02:00
configure.ac Add better ppc support code, but still not functional. 2012-12-11 02:16:51 -02:00
COPYING switch to GPLv3 2008-01-09 15:50:13 +01:00
COPYING.DOC update FSF address 2008-01-09 15:49:29 +01:00
COPYING.LESSER switch to GPLv3 2008-01-09 15:50:13 +01:00
Makefile.am Big merge with new lightning semantics aiming for lightning 2.0. 2012-12-02 19:44:36 -02:00
NEWS add floating-point for x86-64 2008-01-09 15:50:06 +01:00
README initial import 2004-10-10 21:18:38 +00:00
THANKS fix i386 jit_replace and x86_64 jit_movi_f 2010-07-28 23:29:13 +02:00
TODO Update code to build and pass test cases in the arm port. 2012-12-03 14:27:27 -02:00

GNU lightning is a library to aid in making portable programs
that compile assembly code at run time.  For more information,
look at the info documentation.