mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-02 21:10:27 +02:00
* include/lightning/jit_mips.h, lib/jit_mips.c: Update to make the mips backend compile in a qemu image. * lib/jit_ppc.c: Minor adaptations to help in having the ppc backend compilable.
1199 lines
41 KiB
Text
1199 lines
41 KiB
Text
2012-12-04 Paulo Andrade <pcpa@gnu.org>
|
|
|
|
* include/lightning/jit_mips.h, lib/jit_mips.c: Update to
|
|
make the mips backend compile in a qemu image.
|
|
|
|
* lib/jit_ppc.c: Minor adaptations to help in having the
|
|
ppc backend compilable.
|
|
|
|
2012-12-03 Paulo Andrade <pcpa@gnu.org>
|
|
|
|
* configure.ac, include/lightning/jit_private.h, lib/jit_arm-cpu.c,
|
|
lib/jit_arm-swf.c, lib/jit_arm.c, check/Makefile.am: Correct
|
|
implementation of the arm backend port to build and pass the
|
|
current test cases. Tested on armv7 with softfp abi.
|
|
|
|
* lib/jit_disasm.c: Rename and change prototype of static
|
|
disassemble function as in the arm backend it is required
|
|
to access state information stored in the jit_state_t object.
|
|
|
|
* check/3to2.tst, check/add.tst: Correct test case code assuming
|
|
JIT_RO and JIT_RET are the same, and even if they are the same,
|
|
the logic was incorrect because it must always call jit_retval*
|
|
to fetch a function call return before any other instruction.
|
|
The arm backend hash a special condition if jit_retval is not
|
|
called, because "r0" is not JIT_R0, but is JIT_RET and *also*
|
|
the first argument for a called function, so JIT_RET must be
|
|
only used as an argument to jit_retval.
|
|
|
|
2012-12-03 Paulo Andrade <pcpa@gnu.org>
|
|
|
|
* check/all.tst, check/lightning.c: Only declare or use 64 bit
|
|
interfaces on 64 bit builds.
|
|
|
|
* check/fib.tst: Use simpler logic to not need preprocessor
|
|
conditionals for 32 or 64 bit.
|
|
|
|
* include/lightning.h: Only declare 64 bit macros on a 64 bit
|
|
build. Code using lightning must know about wordsize and the
|
|
jit generation limitations, also, this way it generates a
|
|
compile time failure, not a runtime assertion.
|
|
|
|
* include/lightning/jit_x86.h: Correct typo in macro name.
|
|
|
|
* lib/jit_arm.c, lib/jit_arm-cpu.c, lib/jit_mips.c,
|
|
lib/jit_mips-cpu.c, lib/jit_ppc.c, lib/jit_ppc-cpu.c,
|
|
lib/jit_x86.c, lib/jit_x86-cpu.c: Correct wrong code to get
|
|
current jit function pointer.
|
|
|
|
* lib/lightning.c: Move call to the simplify() optimization
|
|
to after register liveness is known. Previous code did work
|
|
by accident but now with proper test cases the problem was
|
|
noticed.
|
|
|
|
* lib/jit_disasm.c: Always cast bfd_vma to long long when
|
|
passing it as printf argument.
|
|
|
|
2012-12-03 Paulo Andrade <pcpa@gnu.org>
|
|
|
|
* configure.ac, check/Makefile.am, check/check.sh,
|
|
doc/Makefile.am, include/lightning/Makefile.am,
|
|
lib/Makefile.am: Correct make distcheck.
|
|
|
|
2012-12-02 Paulo Andrade <pcpa@gnu.org>
|
|
|
|
* lib/jit_ppc.c: Assign copyright ownership to FSF.
|
|
|
|
* lib/jit_x86-cpu.c: Correct integer multiplication that was
|
|
generating code with reversed register arguments.
|
|
|
|
* check/rpn.ok, check/rpn.tst: New test case file.
|
|
|
|
2012-12-02 Paulo Andrade <pcpa@gnu.org>
|
|
|
|
* lib/jit_x86-cpu.c, lib/jit_x86-sse.c, lib/jit_x86-x87.c:
|
|
Actually change copyright owner to FSF as avertised.
|
|
|
|
* lib/jit_arm-cpu.c, lib/jit_arm-swf.c,
|
|
lib/jit_arm-vfp.c, lib/jit_arm.c,
|
|
lib/jit_mips-cpu.c, lib/jit_mips-fpu.c, lib/jit_mips.c,
|
|
lib/jit_ppc-cpu.c, lib/jit_ppc-fpu.c, lib/jit_ppc.c: New
|
|
files implementing initial code different jit backends.
|
|
|
|
* include/lightning/jit_private.h: Add extra field to the
|
|
private jit_patch_t type, required by the arm port.
|
|
|
|
* lib/Makefile.am: Update for the new backend implementation
|
|
files.
|
|
|
|
2012-12-02 Paulo Andrade <pcpa@gnu.org>
|
|
|
|
* check/Makefile.am: Add proper "make clean" rule and missing
|
|
check.sh to EXTRA_DIST.
|
|
|
|
2012-12-02 Paulo Andrade <pcpa@gnu.org>
|
|
|
|
* .gitignore: Update pattern of ignored files.
|
|
|
|
* check/Makefile.am: Add rule to build liblightning.la dependency
|
|
in case of running "make check" before building the library.
|
|
|
|
2012-12-02 Paulo Andrade <pcpa@gnu.org>
|
|
|
|
* lightning/Makefile.am, lightning/asm-common.h,
|
|
lightning/core-common.h, lightning/fp-common.h,
|
|
lightning/funcs-common.h, lightning/i386/Makefile.frag,
|
|
lightning/i386/asm-32.h, lightning/i386/asm-64.h,
|
|
lightning/i386/asm.h, lightning/i386/core-32.h,
|
|
lightning/i386/core-64.h, lightning/i386/core.h,
|
|
lightning/i386/fp-32.h, lightning/i386/fp-64.h,
|
|
lightning/i386/fp.h, lightning/i386/funcs.h,
|
|
lightning/ppc/asm.h, lightning/ppc/core.h,
|
|
lightning/ppc/fp.h, lightning/ppc/funcs.h,
|
|
lightning/sparc/asm.h, lightning/sparc/core.h,
|
|
lightning/sparc/fp.h, lightning/sparc/funcs.h:
|
|
Removed. The core logic is used in the new code, and new mips
|
|
and arm ports will be added. At first, sparc will not be
|
|
supported as it has not yet been ported to the new engine.
|
|
|
|
2012-12-02 Paulo Andrade <pcpa@gnu.org>
|
|
|
|
* tests/Makefile.am, tests/3to2.c, tests/3to2.ok, tests/add.c,
|
|
tests/add.ok, tests/allocai.c, tests/allocai.ok, tests/bp.c,
|
|
tests/bp.ok, tests/divi.c, tests/divi.ok, tests/fib.c, tests/fib.ok,
|
|
tests/fibdelay.c, tests/fibdelay.ok, tests/fibit.c, tests/fibit.ok,
|
|
tests/funcfp.c, tests/funcfp.ok, tests/incr.c, tests/incr.ok,
|
|
tests/ldst.c, tests/ldst.ok, tests/ldxi.c, tests/ldxi.ok,
|
|
tests/modi.c, tests/modi.ok, tests/movi.c, tests/movi.ok,
|
|
tests/printf.c, tests/printf.ok, tests/printf2.c, tests/printf2.ok,
|
|
tests/ret.c, tests/ret.ok, tests/rpn.c, tests/rpn.ok, tests/rpnfp.c,
|
|
tests/rpnfp.ok, tests/sete.c, tests/sete.ok, tests/testfp.c,
|
|
tests/testfp.ok, tests-run-test: Removed previous test suite, in
|
|
favor of a newer one in the check subdirectory.
|
|
|
|
* check/3to2.ok, check/3to2.tst, check/add.ok, check/add.tst,
|
|
check/allocai.ok, check/allocai.tst, check/bp.ok, check/bp.tst,
|
|
check/divi.ok, check/divi.tst, check/fib.ok, check/fib.tst:
|
|
New sample input for the new test program, loosely matching
|
|
several of the previous test cases.
|
|
|
|
* check/Makefile.am: New test suite makefile.
|
|
|
|
* check/check.sh, check/run-test: New wrapper files for the
|
|
new test suite.
|
|
|
|
* check/lightning.c: New file. The main driver of the new test
|
|
suite, that compiles to a parser of a very simple assembly like
|
|
language, generates jit and executes it.
|
|
|
|
* check/all.tst: New file. A generic debug and sample test file
|
|
with a directive to prevent it from being executed, and useful to
|
|
read disassembly of all possible instructions, using a fixed set
|
|
of registers.
|
|
|
|
* include/Makefile.am, include/lightning.h,
|
|
include/lightning/Makefile.am, include/lightning/jit_arm.h,
|
|
include/lightning/jit_mips.h, include/lightning/jit_ppc.h,
|
|
include/lightning/jit_private.h, include/lightning/jit_x86.h,
|
|
lib/Makefile.am, lib/jit_disasm.c, lib/jit_print.c,
|
|
lib/jit_x86-cpu.c, lib/jit_x86-sse.c, lib/jit_x86-x87.c,
|
|
lib/jit_x86.c, lib/lightning.c: New files. These files are
|
|
written from scratch, only by <pcpa@gnu.org>, and have now
|
|
copyright assignment to the FSF. This is the core of the new
|
|
lightning rework. Previously it was integrated in code with
|
|
a garbage collector and several custom types like vectors and
|
|
hash tables, so this first code merge with lightning converts
|
|
that code into a library extracting only the jit bits, and at
|
|
first only for x86_64 GNU/Linux.
|
|
|
|
* lightning.h, m4/lightning.m4: Removed. These are no longer
|
|
required in the new lightning code.
|
|
|
|
.gitignore, Makefile.am, configure.ac: Update for the new
|
|
lightning code.
|
|
|
|
2012-12-02 Paulo Andrade <pcpa@gnu.org>
|
|
* .cvsignore: Removed for extra cleanup.
|
|
|
|
* build-aux: Rename directory to m4.
|
|
|
|
* m4: Renamed to "default" name and for consistency with merge
|
|
with code rework to be imported in lightning.
|
|
|
|
* .gitignore, configure.ac, Makefile.am, doc/Makefile.am:
|
|
Update for build-aux to m4 rename.
|
|
|
|
2012-12-01 Paulo Andrade <pcpa@gnu.org>
|
|
|
|
* opcode/Makefile.am, opcode/Makefile.in, opcode/ansidecl.h,
|
|
opcode/bfd.h, opcode/dis-asm.h, opcode/dis-buf.c, opcode/disass.c,
|
|
opcode/i386-dis.c, opcode/i386.h, opcode/ppc-dis.c, opcode/ppc-opc.c,
|
|
opcode/ppc.h, opcode/sparc-dis.c, opcode/sparc-opc.c, opcode/sparc.h,
|
|
opcode/sysdep.h: Removed. Do not bundle GNU binutils files.
|
|
|
|
* aclocal.m4, configure, Makefile.in, config.h.in, doc/Makefile.in,
|
|
lightning/Makefile.in, tests/Makefile.in: Removed. Do not maintain
|
|
autogenerated files that also generate too much diff noise when
|
|
regenerated in git.
|
|
|
|
* build-aux/help2man, build-aux/texinfo.tex, build-aux/texi2dvi:
|
|
Removed. Buildenvironment must have an up to date version from
|
|
upstream installed.
|
|
|
|
* build-aux/config.guess, build-aux/config.sub, build-aux/depcomp,
|
|
build-aux/install-sh build-aux/mdate-sh build-aux/missing: Removed.
|
|
Do not maintain a copy of automake files in git. Release tarballs
|
|
must use an up to date version.
|
|
|
|
* lightningize.in, doc/lightningize.1: Removed. Do not encourage
|
|
bundling lightning in other packages. It should use a system package
|
|
or a proper thirdy part subdirectory.
|
|
|
|
* INSTALL: Removed. Autoreconf removes it and creates a symlink
|
|
when regenerating files, so, avoid conflicts in git and let
|
|
automake create the symlink.
|
|
|
|
* .gitignore: Add INSTALL and autogenerated files.
|
|
|
|
* configure.ac, Makefile.am: Update for removal of opcode subdir,
|
|
auto generated files and lightningize.
|
|
|
|
* tests/Makefile.am, tests/3to2.c, tests/add.c, tests/bp.c,
|
|
tests/fib.c, tests/fibdelay.c, tests/fibit.c, tests/funcfp.c,
|
|
tests/incr.c, tests/printf.c, tests/rpn.c, tests/rpnfp.c,
|
|
tests/sete.c, tests/testfp.c: Update for removal of opcode subdir.
|
|
|
|
* doc/Makefile.am: Update for removal of lightningize.
|
|
|
|
* configure.ac, lightning/ppc/funcs.h, lightning/sparc/funcs.h,
|
|
lightning/i386/fp.h, lightning/i386/core.h, lightning/i386/asm.h,
|
|
tests/3to2.c, tests/add.c, tests/bp.c, tests/fib.c, tests/fibdelay.c,
|
|
tests/fibit.c, tests/funcfp.c, tests/incr.c, tests/printf.c,
|
|
tests/rpn.c, tests/rpnfp.c, tests/sete.c, tests/testfp.c:
|
|
Remove LIGHTNING_CROSS, it is half supported and incomplete.
|
|
|
|
* tests/3to2.c, tests/funcfp.c, tests/rpnfp.c: Remove preprocessor
|
|
check on JIT_FPR. If no hardware registers are available, the backend
|
|
must provide an alternative for software float.
|
|
|
|
* lightning/ppc/core.h, lightning/sparc/core.h, tests/Makefile.am:
|
|
Remove JIT_NEED_PUSH_POP. It is absolutely not trivial to implement
|
|
properly on some backends due to stack alignment constraints, and
|
|
whenever it is required, using jit_allocai and using a properly
|
|
aligned stack vector, or a heap buffer, is better.
|
|
|
|
* tests/push-pop.c, tests/push-pop.ok: Removed due to
|
|
JIT_NEED_PUSH_POP no longer available.
|
|
|
|
2011-02-28 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core-64.h: Add jit_add{c,x}{i,r}_l, jit_mulr_{l,ul}_,
|
|
fix jit_mul{i,r}_{l,ul}.
|
|
|
|
2010-08-20 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/fp-64.h: Return patch address from jit_bXYr_{f,d}.
|
|
Reported by Paulo César Pereira de Andrade.
|
|
* lightning/ppc/fp.h: Likewise.
|
|
* lightning/sparc/fp.h: Implement FP branches.
|
|
|
|
2010-08-18 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/fp-64.h: Fix jp in jit_bner_{f,d}.
|
|
|
|
2010-08-18 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/fp-32.h: Fix -D_ASM_SAFETY compilation.
|
|
Reported by Paulo César Pereira de Andrade.
|
|
|
|
2010-08-15 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* tests/ldst.c: Update.
|
|
* tests/Makefile.am: Use -ffloat-store to compile it.
|
|
|
|
2010-08-15 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core.h (jit_ldr_c, jit_ldxr_c, jit_ldr_s,
|
|
jit_ldxr_s): Move...
|
|
* lightning/i386/core-32.h: ... here.
|
|
* lightning/i386/core-64.h (jit_ldr_c, jit_ldxr_c, jit_ldr_s,
|
|
Use movsbq and movswq.
|
|
|
|
2010-08-10 Paulo César Pereira de Andrade <pcpa@mandriva.com.br>
|
|
|
|
* lightning/i386/core-32.h (jit_replace): Use MOVLrr, not MOVLir.
|
|
(jit_movbrm): Check index register as well.
|
|
* lightning/i386/fp-64.h: Add jit_extr_f_d and jit_extr_d_f.
|
|
* lightning/fp-common.h: Add jit_extr_f_d and jit_extr_d_f.
|
|
|
|
2010-07-28 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* tests/Makefile.am: Add ldst test.
|
|
* tests/Makefile.in: Regenerate.
|
|
* tests/ldst.c: New.
|
|
* tests/ldst.ok: New.
|
|
|
|
2010-07-28 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* THANKS: Add Paulo Cesar Pereira de Andrade.
|
|
* doc/porting.texi: Fix ordering of arguments in jit_stxi.
|
|
* lightning/i386/core-32.h (jit_replace): Remove cmp argument.
|
|
* lightning/i386/fp-64.h (jit_movi_f): Fix.
|
|
|
|
2010-07-26 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core-32.h (jit_replace): Move here (removed
|
|
2009-03-01).
|
|
|
|
2010-07-19 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* build-aux/lightning.m4: Always set and replace lightning_frag.
|
|
* Makefile.in: Regenerate.
|
|
* aclocal.m4: Regenerate.
|
|
* config.h.in: Regenerate.
|
|
* configure: Regenerate.
|
|
* doc/Makefile.in: Regenerate.
|
|
* doc/lightningize.1: Regenerate.
|
|
* doc/version.texi: Regenerate.
|
|
* lightning/Makefile.in: Regenerate.
|
|
* opcode/Makefile.in: Regenerate.
|
|
* tests/Makefile.in: Regenerate.
|
|
|
|
2009-03-01 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core-64.h: Use Mike's macros for x86-64 too.
|
|
* lightning/i386/core.h: Remove jit_replace.
|
|
|
|
2009-02-27 Mike Spivey <mike@comlab.ox.ac.uk>
|
|
|
|
* lightning/i386/core.h: Rewrite shift-handling macros.
|
|
* lightning/fp-common.h: Fix jit_extr_{f_d,d_f}.
|
|
|
|
2009-02-17 Mike Spivey <mike@comlab.ox.ac.uk>
|
|
|
|
* lightning/i386/core.h: Fix blunder in operand order.
|
|
|
|
2009-02-17 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/fp-32.h: Another fix to jit_fp_btest.
|
|
|
|
2009-02-17 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/fp-common.h: Define double branches if missing.
|
|
* lightning/i386/asm.h: Define JC and JNC mnemonics.
|
|
* lightning/i386/fp-32.h: Fix jit_fp_btest. All reported
|
|
by Mike Spivey.
|
|
|
|
2008-10-09 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/ppc/funcs.h (jit_flush_code): Subtract 1 from end.
|
|
Reported by Eli Barzilay and Matthew Flatt.
|
|
|
|
2008-08-23 Nix <nix@esperi.org.uk>
|
|
|
|
* lightning/i386/Makefile.frag: fp-32.h and fp-64.h are target files.
|
|
|
|
2008-07-02 Laurent Michel <ldm@engr.uconn.edu>
|
|
|
|
* lightning/ppc/funcs.h (jit_flush_code): modified the computation
|
|
of start/end. The pointer arithmetic was done without casting. It
|
|
prevented compilation with recent gcc versions.
|
|
* lightning/ppc/core.h (jit_pushr_i): The offset for the store was
|
|
incorrect. Should have been 4 bytes below SP (not above).
|
|
* lightning/ppc/core.h (jit_popr_i): The offset for the load was
|
|
incorrect. Should have been 0 (not +8).
|
|
|
|
2008-06-17 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/asm-64.h: Forward IMULQir to IMULQirr,
|
|
fix REXQ order for IMULQirr.
|
|
|
|
2008-06-17 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core.h: Fix _rN vs. _rR.
|
|
|
|
2008-06-16 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core.h: Use jit_save in jit_replace. Move JIT_R
|
|
definition...
|
|
* lightning/i386/core-32.h: ... here; define jit_save so that
|
|
the core.h has no effect on the 32-bit backend.
|
|
* lightning/i386/core-64.h: Place JIT_R1/JIT_R2 in R10/R11,
|
|
place outgoing arguments in the right spot from the beginning,
|
|
define jit_save, fix jit_reg8/jit_reg16.
|
|
|
|
2008-06-15 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core-64.h: Rewrite argument passing to
|
|
support up to 6 arguments and generate less code.
|
|
|
|
2008-06-14 Laurent Michel <ldm@thorgal.homelinux.org>
|
|
|
|
* lightning/i386/core-64.h (jit_movi_l): When the operand is 0,
|
|
the XOR should be on a quadword.
|
|
* lightning/i386/core-64.h (jit_prolog): Keep 16-byte stack
|
|
alignment.
|
|
(jit_ret): Always use LEAVE.
|
|
|
|
2008-06-13 Laurent Michel <ldm@thorgal.homelinux.org>
|
|
|
|
* lightning/i386/core-64.h: Add (void) casts for C++ compatibility.
|
|
* lightning/i386/asm.h: Likewise.
|
|
|
|
2008-06-12 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core.h: Move JIT_V definition...
|
|
* lightning/i386/core-32.h: ... here.
|
|
* lightning/i386/core-64.h: ... and here. Avoid dancing between
|
|
RSI/RDI and R12/R13, and place JIT_V1/JIT_V2 in R12/R13.
|
|
|
|
2008-06-11 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* build-aux/lightning.m4: Adjust LIGHTNING_BACKENDS, don't
|
|
use suffix support to distinguish i386/x86_64.
|
|
* lightning/i386/Makefile.frag: Use LIGHTNING_TARGET_FILES
|
|
to distribute *-32.h and *-64.h files now.
|
|
* lightning/i386/asm-i386: Moved to...
|
|
* lightning/i386/asm.h: Include the appropriate subtarget file.
|
|
* lightning/i386/core-i386: Moved to...
|
|
* lightning/i386/core.h: Include the appropriate subtarget file.
|
|
* lightning/i386/fp.h: New, include the appropriate subtarget file.
|
|
* lightning/i386/asm-32: Do not include asm-i386.h.
|
|
* lightning/i386/asm-64.h: Likewise.
|
|
* lightning/i386/core-32: Do not include core-i386.h.
|
|
* lightning/i386/core-64.h: Likewise.
|
|
* lightning/Makefile.am: Adjust for renamed files.
|
|
|
|
* configure.ac: Define LIGHTNING_TARGET here.
|
|
* opcode/disass.c: Change list of valid LIGHTNING_TARGET values.
|
|
|
|
* lightningize.in: Robustify against missing subtarget files.
|
|
|
|
2008-06-11 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core-32.h: Use MOVLir instead of jit_movi_l
|
|
to implement jit_movi_p.
|
|
|
|
2008-06-11 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core-32.h: Use separate __APPLE__ and SysV
|
|
prolog/ret macros. Subtract 12 bytes in __APPLE__ case to
|
|
keep stack aligned, and always use LEAVE in the epilog.
|
|
|
|
2008-06-11 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core-i386.h: Fix C++ incompatibility.
|
|
|
|
2008-06-10 Laurent Michel <ldm@engr.uconn.edu>
|
|
|
|
* lightning/i386/core-i386.h: Fix jit_replace8 for
|
|
case when one of the operands is _EAX.
|
|
|
|
2008-05-19 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* tests/run-test: Avoid CRLF issues on mingw.
|
|
|
|
2008-03-21 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core-64.h: Fix jit_{ld,st}{,x}i_{i,l}.
|
|
Remove jit_ld{,x}i_ul.
|
|
* lightning/core-common.h: Make jit_ld{,x}{i,r}_ul
|
|
always a synonym of the _l variant.
|
|
* doc/porting.texi: Document this.
|
|
|
|
2008-03-19 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core-64.h: Fix uses of jit_qop_.
|
|
|
|
2008-03-19 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core-64.h: Add boolean operations.
|
|
|
|
2008-03-19 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/asm-64.h: Add LEAQmr.
|
|
|
|
2008-03-19 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core-64.h: Misc bugfixes.
|
|
|
|
2008-03-19 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core-i386.c: Remove jit_ldr_i, jit_ldxr_i.
|
|
* lightning/i386/core-32.h: Add jit_ldr_i, jit_ldxr_i.
|
|
* lightning/i386/core-64.h: Add jit_ld{r,xr,i,xi}_{ui,l,ul};
|
|
move jit_ldr_i, jit_ldxr_i, jit_str_l, jit_stxr_l with others.
|
|
|
|
2008-03-19 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/asm-common.h: Add _s32P.
|
|
|
|
2008-03-19 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core-64.h: Implement long mul/div/mod.
|
|
|
|
2008-03-19 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/asm-i386.h: Cast memory address to long for JCCim.
|
|
|
|
2008-03-15 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/asm-common.h: Add underscores around __unused__
|
|
attribute.
|
|
|
|
2008-03-15 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/ppc/core.h: Avoid some "value computed is not used"
|
|
warnings.
|
|
* lightnings/tests/allocai.c: Silence other warnings.
|
|
|
|
2008-03-14 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightningize.in: Fix some problems (not all).
|
|
|
|
2008-03-14 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core-32.h: Avoid some "value computed is not used"
|
|
warnings; reported by Sam Steingold.
|
|
|
|
2008-03-08 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core-32.h: Fix stxr_c(_EAX, _EBX, _ESI).
|
|
|
|
2008-02-13 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/asm-32.h: Avoid redefinition of _r1, reported by
|
|
Sam Steingold.
|
|
* lightning/i386/asm-64.h: Likewise.
|
|
|
|
2008-02-08 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/asm-i386.h: Don't define _VOID, reported
|
|
by Reini Urban.
|
|
|
|
2008-02-03 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* build-aux/lightning.m4: Add --with-lightning-prefix option, suggested
|
|
by Sam Steingold.
|
|
|
|
2008-01-14 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core-64.h: Use CALLsr, not CALLLsr.
|
|
|
|
2008-01-13 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core-i386.h: Move jit_calli and jit_callr...
|
|
* lightning/i386/core-32.h: ... here.
|
|
* lightning/i386/core-64.h: Redefine them.
|
|
|
|
2008-01-05 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/fp-32.h: Fix sub(a,0,a).
|
|
* lightning/tests/3to2.c: Add new testcases.
|
|
* lightning/tests/3to2.ok: Add new testcases.
|
|
|
|
2008-01-02 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/fp-32.h: Fix sub(a,b,a) with a ~= JIT_FPR0.
|
|
* lightning/tests/3to2.c: New.
|
|
* lightning/tests/3to2.ok: New.
|
|
|
|
2007-11-07 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* opcode/Makefile.am: Fix AM_CPPFLAGS.
|
|
|
|
2007-08-12 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core-i386.h: Improve encoding of set* instructions.
|
|
* lightning/i386/core-64.h: Fix jit_bra_l.
|
|
* tests/sete.c: New.
|
|
* tests/sete.ok: New.
|
|
|
|
2007-06-29 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* tests/bp.c: Upgrade to GPL/LGPLv3.
|
|
* lightning/i386/asm-32.h: Upgrade to GPL/LGPLv3.
|
|
* lightning/i386/asm-64.h: Upgrade to GPL/LGPLv3.
|
|
* lightning/i386/core-32.h: Upgrade to GPL/LGPLv3.
|
|
* lightning/i386/core-64.h: Upgrade to GPL/LGPLv3.
|
|
* lightning/i386/fp-64.h: Upgrade to GPL/LGPLv3.
|
|
* lightning/sparc/asm.h: Upgrade to GPL/LGPLv3.
|
|
* lightning/sparc/core.h: Upgrade to GPL/LGPLv3.
|
|
* lightning/sparc/fp.h: Upgrade to GPL/LGPLv3.
|
|
* lightning/sparc/funcs.h: Upgrade to GPL/LGPLv3.
|
|
* lightning/i386/asm-i386.h: Upgrade to GPL/LGPLv3.
|
|
* lightning/i386/core-i386.h: Upgrade to GPL/LGPLv3.
|
|
* lightning/i386/fp-32.h: Upgrade to GPL/LGPLv3.
|
|
* lightning/i386/funcs.h: Upgrade to GPL/LGPLv3.
|
|
* lightning/ppc/asm.h: Upgrade to GPL/LGPLv3.
|
|
* lightning/ppc/core.h: Upgrade to GPL/LGPLv3.
|
|
* lightning/ppc/fp.h: Upgrade to GPL/LGPLv3.
|
|
* lightning/ppc/funcs.h: Upgrade to GPL/LGPLv3.
|
|
* lightning.h: Upgrade to GPL/LGPLv3.
|
|
* tests/add.c: Upgrade to GPL/LGPLv3.
|
|
* tests/fib.c: Upgrade to GPL/LGPLv3.
|
|
* tests/testfp.c: Upgrade to GPL/LGPLv3.
|
|
* tests/fibdelay.c: Upgrade to GPL/LGPLv3.
|
|
* tests/fibit.c: Upgrade to GPL/LGPLv3.
|
|
* tests/funcfp.c: Upgrade to GPL/LGPLv3.
|
|
* tests/incr.c: Upgrade to GPL/LGPLv3.
|
|
* tests/printf.c: Upgrade to GPL/LGPLv3.
|
|
* tests/printf2.c: Upgrade to GPL/LGPLv3.
|
|
* tests/rpn.c: Upgrade to GPL/LGPLv3.
|
|
* tests/rpnfp.c: Upgrade to GPL/LGPLv3.
|
|
* lightning/asm-common.h: Upgrade to GPL/LGPLv3.
|
|
* lightning/core-common.h: Upgrade to GPL/LGPLv3.
|
|
* lightning/fp-common.h: Upgrade to GPL/LGPLv3.
|
|
* lightning/funcs-common.h: Upgrade to GPL/LGPLv3.
|
|
* opcode/dis-buf.c: Upgrade to GPL/LGPLv3.
|
|
* opcode/disass.c: Upgrade to GPL/LGPLv3.
|
|
* opcode/i386-dis.c: Upgrade to GPL/LGPLv3.
|
|
* opcode/sparc-dis.c: Upgrade to GPL/LGPLv3.
|
|
* opcode/sparc-opc.c: Upgrade to GPL/LGPLv3.
|
|
* lightningize.in: Upgrade to GPL/LGPLv3.
|
|
* opcode/bfd.h: Upgrade to GPL/LGPLv3.
|
|
* opcode/i386.h: Upgrade to GPL/LGPLv3.
|
|
* opcode/sparc.h: Upgrade to GPL/LGPLv3.
|
|
|
|
2007-01-26 Thomas Girard <thomas.g.girard@free.fr>
|
|
|
|
* lightning/Makefile.am: Add clean-local target.
|
|
|
|
2006-12-02 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/asm-i386.h: Add CVTTS?2SIL.
|
|
* lightning/i386/asm-64.h: Add CVTTS?2SIQ.
|
|
* lightning/i386/fp-64.h: Use it.
|
|
|
|
* lightning/Makefile.am: Place files in nodist_lightning_HEADERS.
|
|
|
|
2006-11-23 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/core-common.h: Add casts in "*i_p" variants.
|
|
* lightning/i386/asm-32.h: Add _r1.
|
|
* lightning/i386/asm-64.h: Likewise, and add SSE instructions.
|
|
* lightning/i386/asm-i386.h: Merge SSE instructions from Gwenole.
|
|
Use short form for 16-bit AX instructions. Remove _r1
|
|
* lightning/i386/core-64.h: Add FP ABI support in its infancy.
|
|
* lightning/i386/core-i386.h: Move jit_arg_f and jit_arg_d...
|
|
* lightning/i386/core-32.h: ... and jit_prepare_f and jit_prepare_d...
|
|
* lightning/i386/fp-32.h: ... here.
|
|
* lightning/i386/fp-64.h: Write the code.
|
|
* lightning/sparc/fp.h: Fix jit_extr_{f_d,d_f} register order.
|
|
|
|
2006-11-22 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/asm-i386.h: Move x86-64 instructions...
|
|
* lightning/i386/asm-64.h: ... here.
|
|
* lightning/i386/fp-32.h: Fix bugfixes worked around in froofyJIT.
|
|
Add JIT_FPRET.
|
|
* lightning/sparc/fp.h: Likewise.
|
|
* lightning/ppc/fp.h: Likewise.
|
|
* lightning/fp-common.h: Adjust for JIT_FPRET.
|
|
* tests/funcfp.c: Adjust for JIT_FPRET.
|
|
* tests/rpnfp.c: Adjust for JIT_FPRET.
|
|
|
|
2006-11-20 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/asm-i386.h: Add an underscore to macros without
|
|
a parameter.
|
|
|
|
2006-11-20 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core-i386.h: Move jit_movip, jit_check8, jit_reg8,
|
|
jit_reg16, jit_movbrm...
|
|
* lightning/i386/core-32.h: ... here.
|
|
* lightning/i386/core-64.h: Redefine them. Fix other bugs.
|
|
|
|
* tests/printf.c: Do not do a varargs call.
|
|
|
|
2006-11-20 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/asm-i386.h: Check in rewrite from Basilisk II.
|
|
* lightning/i386/asm-32.h: Adjust.
|
|
* lightning/i386/asm-64.h: Adjust.
|
|
* lightning/i386/fp-32.h: Adjust.
|
|
|
|
* lightning/i386/core-32.h: Adjust. Add jit_{ld,ldx,st,stx}i*.
|
|
* lightning/i386/core-64.h: Adjust. Add jit_{ld,ldx,st,stx}i*.
|
|
* lightning/i386/core-i386.h: Adjust. Remove these patterns.
|
|
|
|
2006-11-20 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/asm-i386.h: Merge 64-bit cleanliness changes from
|
|
mzscheme.
|
|
Add SSE.
|
|
* lightning/i386/asm-64.h: Likewise.
|
|
|
|
2006-11-20 Paolo Bonzini <bonzini@gnu.org>
|
|
Ludovic Courtes <ludo@chbouib.org>
|
|
|
|
* lightning/i386/core-32.h: Disable jit_push and jit_pop if stack not
|
|
needed.
|
|
* lightning/i386/core-64.h: Disable jit_push and jit_pop if stack not
|
|
needed.
|
|
* lightning/sparc/core.h: Merge final implementation of jit_pushr and
|
|
jit_popr.
|
|
* lightning/ppc/core.h: Fix implementation of jit_pushr and jit_popr to
|
|
work (more or less) across function calls.
|
|
|
|
* tests/push-pop.c, tests/push-pop.ok: New test.
|
|
* tests/Makefile.am: Run it.
|
|
|
|
2006-11-20 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/asm-common.h: Make 64-bit safe.
|
|
* lightning/i386/funcs.h: Make 64-bit safe.
|
|
|
|
* lightning/i386/asm-64.h: More merge from mzscheme.
|
|
* lightning/i386/asm-i386.h: More merge from mzscheme.
|
|
* lightning/i386/core-32.h: More merge from mzscheme.
|
|
* lightning/i386/core-64.h: More merge from mzscheme.
|
|
* lightning/i386/core-i386.h: More merge from mzscheme.
|
|
|
|
* tests/rpnfp.c, tests/testfp.c, tests/funcfp.c: Skip if no
|
|
floating-point support.
|
|
|
|
2006-11-04 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* tests/rpn.c: Remove pushr/popr.
|
|
|
|
2006-11-04 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/ppc/core.h: Implement jit_allocai, define JIT_FP to be R1.
|
|
* lightning/ppc/funcs.h: Store frame size into _jitl. Store R1 before
|
|
the STMW, so that the offset is unchanged when we patch the STMW.
|
|
* lightning/i386/core.h: Define JIT_FP to be EBP.
|
|
* lightning/i386/core-32.h: Implement jit_allocai, put LEAVE in the
|
|
epilog if jit_allocai was used.
|
|
* lightning/i386/core-64.h: Implement jit_allocai, put LEAVE in the
|
|
epilog if jit_allocai was used.
|
|
|
|
2006-11-04 Ludovic Courtes <ludo@chbouib.org>
|
|
|
|
* lightning/sparc/core.h: Implement jit_allocai.
|
|
* tests/allocai.c: New.
|
|
* tests/Makefile.am: Point to new tests.
|
|
|
|
2006-11-03 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/ppc/core.h: Fix jit_bms using BNE rather than BGT.
|
|
"AND." does signed comparisons.
|
|
|
|
2006-10-31 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* doc/porting.texi: Rename JIT_FP to JIT_AP.
|
|
* lightning/core-common.h: Likewise.
|
|
* lightning/i386/core-i386.h: Likewise.
|
|
* lightning/fp-common.h: Provide default versions of jit_getarg_[fd].
|
|
* lightning/i386/fp-32.h: Don't provide jit_getarg_[fd].
|
|
* lightning/ppc/fp.h: Likewise.
|
|
|
|
2006-10-31 Ludovic Courtes <ludo@chbouib.org>
|
|
|
|
* doc/using.texi (The instruction set): Clarified the use of `JIT_RET' and
|
|
documented `jit_retval'.
|
|
* tests/ret.c (generate_function_proxy): After `jit_finish', use
|
|
`jit_retval_i' to move FUNC's return value into the correct register.
|
|
|
|
2006-10-31 Paolo Bonzini <bonzini@gnu.org>
|
|
Ludovic Courtes <ludo@chbouib.org>
|
|
|
|
* tests/divi.c, tests/divi.ok, tests/movi.c, tests/movi.ok: New.
|
|
* tests/ldxi.c: Ensure large pointer is generated.
|
|
* tests/Makefile.am: Point to new tests.
|
|
* lightning.h: Include funcs-common.h before funcs.h.
|
|
* lightning/sparc/core.h: Fix bugs in modi/divi.
|
|
|
|
2006-10-30 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/Makefile.am: Use "ln -sf".
|
|
* lightning/core-common.h: Define jit_negr_l if necessary.
|
|
|
|
2006-10-30 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/asm.h (MOVS*, MOVZ*): Use correct _r[124] macros.
|
|
|
|
2006-10-29 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* configure.ac: Use lightning.m4 macros.
|
|
* lightning.m4: Refactor to use common code in configure.ac. Move...
|
|
* build-aux/lightning.m4: ... here.
|
|
* lightningize.in: Support suffixes.
|
|
* opcode/disass.in: Adapt to changes in configure.ac.
|
|
|
|
* lightning/ppc/funcs.h: Use __APPLE__ instead of _CALL_DARWIN.
|
|
* lightning/i386/core-32.h: Likewise.
|
|
|
|
2006-10-26 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* configure.ac: Fix compilation test.
|
|
* lightning/Makefile.am: Symlink LIGHTNING_TARGET_FILES in
|
|
non-distribution mode.
|
|
* lightning/i386/Makefile.frag: Use LIGHTNING_TARGET_FILES.
|
|
|
|
2006-10-26 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* configure.ac: Subst cpu.
|
|
* lightning/core-common.h: Make tests pass on i386.
|
|
* lightning/i386/asm-32.h: Make tests pass on i386.
|
|
* lightning/i386/asm-64.h: Make tests pass on i386.
|
|
* lightning/i386/asm-i386.h: Make tests pass on i386.
|
|
* lightning/i386/core-32.h: Make tests pass on i386.
|
|
* lightning/i386/core-64.h: Make tests pass on i386.
|
|
* lightning/i386/core-i386.h: Make tests pass on i386.
|
|
* tests/Makefile.am: Include files from cpu directory.
|
|
|
|
2006-10-26 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/asm.h: Move to asm-i386.h
|
|
* lightning/i386/asm-32.h: New, from Matthew Flatt.
|
|
* lightning/i386/asm-64.h: New, from Matthew Flatt.
|
|
* lightning/i386/core.h: Move to core-i386.h
|
|
* lightning/i386/core-32.h: New, from Matthew Flatt.
|
|
* lightning/i386/core-64.h: New, from Matthew Flatt.
|
|
* lightning/i386/fp.h: Move to fp-32.h
|
|
* lightning/i386/fp-64.h: New, dummy.
|
|
* lightning/i386/Makefile.frag: New.
|
|
* lightning/Makefile.am: Support per-target Makefile fragments.
|
|
* configure.ac: Support per-target Makefile fragments and CPU suffixes.
|
|
|
|
2006-10-16 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/i386.h (jit_flush_code): Fix syntax error. :-(
|
|
|
|
2006-07-06 Paolo Bonzini <bonzini@gnu.org>
|
|
Ludovic Courtes <ludovic.courtes@laas.fr>
|
|
|
|
* doc/using.texi: Clarify "Using autoconf" section
|
|
and rename it to "Bundling lightning"
|
|
* lightning.m4: Work also if lightning is not bundled.
|
|
|
|
2006-07-06 Paolo Bonzini <bonzini@gnu.org>
|
|
Ludovic Courtes <ludovic.courtes@laas.fr>
|
|
|
|
* lightning/ppc/core.h (_jit_mod): Replace with...
|
|
(_jit_mod_big, _jit_mod_small): ... these.
|
|
(jit_modi_i, jit_modi_ui): Rewrite.
|
|
* tests/modi.c, tests/modi.ok: New tests.
|
|
|
|
2006-05-18 Matthew Flatt <mflatt@cs.utah.edu>
|
|
|
|
* lightning/i386/asm.h: Fix test for extending the mprotect area
|
|
towards lower addresses.
|
|
|
|
2006-05-16 Bruno Haible <bruno@clisp.org>
|
|
|
|
* lightning/asm-common.h: Don't use __func__ nor __FUNCTION__ if
|
|
not compiling with GNU C.
|
|
|
|
2006-02-16 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/ppc/core.h: Fix jit_ldxi_* with big displacement.
|
|
|
|
2006-01-23 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* configure.ac: Fix comments in config.h.in.
|
|
|
|
2005-11-25 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/sparc/fp.h: Fix header comment.
|
|
* lightning/ppc/fp.h: Fix header comment.
|
|
|
|
2005-04-27 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/asm.h (JCm, JCSm, JNCm, JNCSm): New.
|
|
|
|
2004-11-26 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/ppc/funcs.h (_jit_epilog): Remove unused variable.
|
|
|
|
2004-11-13 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/funcs.h [__linux__]: Include sys/mman.h.
|
|
|
|
2004-11-09 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/sparc/fp.h: Fix fp-to-integer conversions.
|
|
* lightning/ppc/testfp.c: Test fp-to-integer conversions
|
|
of integer numbers.
|
|
* lightning/ppc/testfp.ok: Adjust for the above.
|
|
|
|
2004-11-08 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/ppc/testfp.c: Always flush code before
|
|
testing it.
|
|
|
|
2004-11-08 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/ppc/fp.h: Do not clobber f31.
|
|
|
|
2004-11-08 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning.h: New name of...
|
|
* lightning-inst.h: ... this file.
|
|
* lightning.h.in: Removed.
|
|
|
|
* opcodes/disass.c: Include config.h.
|
|
* tests/add.c: Include config.h.
|
|
* tests/bp.c: Include config.h.
|
|
* tests/fib.c: Include config.h.
|
|
* tests/fibdelay.c: Include config.h.
|
|
* tests/fibit.c: Include config.h.
|
|
* tests/funcfp.c: Include config.h.
|
|
* tests/incr.c: Include config.h.
|
|
* tests/printf.c: Include config.h.
|
|
* tests/printf2.c: Include config.h.
|
|
* tests/rpn.c: Include config.h.
|
|
* tests/rpnfp.c: Include config.h.
|
|
* tests/testfp.c: Include config.h.
|
|
|
|
2004-10-12 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/fp.h: Fix bugs in conditional branches.
|
|
|
|
2004-10-10 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/funcs.h: Fix pasto in jit_flush_code.
|
|
|
|
2004-10-08 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/ppc/fp.h: Optimized conditional branches.
|
|
|
|
2004-09-20 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/ppc/asm.h: Fix more typos.
|
|
|
|
2004-09-20 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/ppc/asm.h: Fix typos, replace `26' with JIT_AUX.
|
|
|
|
2004-09-20 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/ppc/fp.h: Added conditional branches.
|
|
|
|
2004-09-18 Laurent Michel <ldm@thorgal.homelinux.org>
|
|
|
|
* lightning/ppc/fp.h (jit_unler_d, jit_unltr_d, jit_unger_d,
|
|
jit_ungtr_d, jit_ltgt_d, jit_uneq_d): Implemented missing tests
|
|
to fully support testfp.
|
|
(jit_floorr_d_i, jit_ceilr_d_i, jit_roundr_d_i, jit_truncr_d_i):
|
|
New macros.
|
|
* lightning/ppc/asm.h: Added missing opcodes FCTIWZ and MTFSFI.
|
|
* lightning/ppc/funcs.h (_jit_prolog): Fixed minor mistake in
|
|
the initialization of _jitl.nextarg_geti, relying on the
|
|
JIT_AUX macro as well to get the register offset.
|
|
|
|
2004-09-07 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/ppc/funcs.h: Fix typo.
|
|
|
|
2004-09-06 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* tests/funcfp.c: Use %g. Remove C99 variable declarations.
|
|
* tests/testfp.c: Don't use __builtin_nan.
|
|
|
|
* lightning/ppc/core.h: Add three V registers.
|
|
* lightning/ppc/funcs.h: Adjust.
|
|
|
|
* lightning/sparc/core.h: Some fixes related to FP argument passing.
|
|
Move R0 to %g2, use %o7 for JIT_BIG2.
|
|
* lightning/sparc/fp.h: Some fixes related to FP argument passing.
|
|
|
|
2004-09-02 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/sparc/core.h: Add another V register,
|
|
move R0 to %o7.
|
|
|
|
2004-07-15 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/funcs.h: Implement jit_flush_code,
|
|
in order to support Fedora's exec-shield.
|
|
|
|
2004-07-14 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/core-common.h: Add more jit_extr_*_* macros.
|
|
* lightning/doc/using.texi: Be clearer about the order
|
|
of arguments in jit_extr_*_*.
|
|
* lightning/doc/porting.texi: Add more jit_extr_*_* macros.
|
|
* lightning/i386/fp.h: Fix typo in jit_extr_i_d.
|
|
|
|
2004-07-14 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/ppc/funcs.h: Adjust offset of LR into
|
|
stack frame if running under the Darwin ABI.
|
|
|
|
2004-07-13 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/fp.h: Rename jit_exti_d to jit_extr_i_d.
|
|
|
|
2004-07-13 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/ppc/core.h: Fix thinko.
|
|
|
|
* lightning/i386/core.h: Fix jit_lti_ui.
|
|
* lightning/core-common.h: Add missing macros.
|
|
|
|
* lightning/ppc/fp.h: Rename jit_neg_* to jit_negr_*.
|
|
* lightning/i386/fp.h: Rename jit_neg_* to jit_negr_*.
|
|
* lightning/sparc/fp.h: Rename jit_neg_* to jit_negr_*.
|
|
* lightning/fp-common.h: Rename jit_neg_* to jit_negr_*.
|
|
* doc/porting.texi: Add undocumented macros.
|
|
|
|
2004-07-12 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* doc/porting.texi: Add missing macros.
|
|
|
|
2004-07-12 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/ppc/funcs.h: Don't generate trampolines.
|
|
Separate prolog and epilog generation.
|
|
* lightning/ppc/core.h: Generate epilog explicitly.
|
|
Don't reserve r31 anymore.
|
|
* lightning/core-common.h: Remove call to jit_setup_code.
|
|
|
|
2004-07-09 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/lightning.h.in: Avoid preprocessor warnings.
|
|
* lightning/lightning-inst.h: Likewise.
|
|
|
|
* lightning/i386/core.h: Define JIT_R, JIT_R_NUM, JIT_V,
|
|
JIT_V_NUM.
|
|
* lightning/ppc/core.h: Likewise.
|
|
* lightning/sparc/core.h: Likewise.
|
|
* lightning/i386/fp.h: Define JIT_FPR, JIT_FPR_NUM.
|
|
* lightning/ppc/fp.h: Likewise.
|
|
* lightning/sparc/fp.h: Likewise.
|
|
* lightning/core-common.h: Define fixed register names.
|
|
* lightning/fp-common.h: Likewise for FP regs.
|
|
|
|
2004-07-09 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/ppc/funcs.h: Fix location where return address
|
|
is stored.
|
|
* lightning/i386/asm.h: Add a trailing _ to opcodes without
|
|
any parameter.
|
|
* lightning/i386/core.h: Adjust for the above.
|
|
|
|
2004-04-15 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/fp.h: Change "and" to "_and"
|
|
to satisfy C++ compilers.
|
|
|
|
2004-04-14 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/sparc/fp.h: Use memcpy to implement jit_movi.
|
|
* lightning/ppc/fp.h: Use memcpy to implement jit_movi.
|
|
Move floating-point opcodes...
|
|
* lightning/ppc/asm.h: ... here.
|
|
|
|
2004-04-14 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/core-common.h: Add jit_finishr.
|
|
* lightning/ppc/core.h: Add jit_callr and jit_finishr.
|
|
* lightning/i386/core.h: Add jit_callr.
|
|
* lightning/sparc/core.h: Add jit_callr. Fix typo.
|
|
|
|
2004-04-14 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core.h: Fix pasto in jit_b*_ui.
|
|
|
|
2004-03-30 Laurent Michel
|
|
|
|
* lightning/ppc: Implement PowerPC floating point
|
|
(ChangeLog entry missing).
|
|
|
|
2004-03-12 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/fp-common.h: Load/store macros are not the
|
|
same for floats and doubles anywhere, but jit_retval may be.
|
|
* lightning/i386/asm.h: Fix = mistaken for == in ESCrri.
|
|
* lightning/i386/core.h: Fix typo in jit_prepare_[fd].
|
|
* lightning/i386/fp.h: Rewritten.
|
|
* tests/testfp.c: Add tests for unordered comparisons.
|
|
* tests/testfp.ok: Add results.
|
|
|
|
2004-03-15 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
Merge changes from Laurent Michel.
|
|
|
|
* lightning/asm-common.h: Add _jit_I_noinc.
|
|
* lightning/core-common.h: Support jit_init,
|
|
jit_setup_code, jit_patch_at. Return patchable IP from
|
|
jit_movi_p.
|
|
* lightning/funcs-common.h: Provide defaults
|
|
for jit_setup_code, jit_start_pfx, jit_end_pfx
|
|
* lightning/i386/core.h: Add jit_patch_at, jit_patch_movi.
|
|
* lightning/ppc/core.h: Likewise.
|
|
* lightning/sparc/core.h: Likewise.
|
|
* lightning/ppc/asm.h: Fix generation of branch destination
|
|
displacements in _FB and _BB
|
|
* lightning/ppc/core.h: Generate trampolines in the user
|
|
area.
|
|
* lightning/ppc/funcs.h: Add a few casts.
|
|
* tests/bc.c: New testcase.
|
|
|
|
* lightning/i386/asm.h: Wrap into #ifndef LIGHTNING_DEBUG.
|
|
* lightning/ppc/asm.h: Wrap into #ifndef LIGHTNING_DEBUG.
|
|
* lightning/sparc/asm.h: Wrap into #ifndef LIGHTNING_DEBUG.
|
|
|
|
|
|
2004-03-09 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/sparc/fp.h: Rewrite. Move macros for
|
|
FP code generation...
|
|
* lightning/sparc/asm.h: ... here.
|
|
* lightning/sparc/core.h: Rename jit_prepare to
|
|
jit_prepare_i, jit_retval to jit_retval_i.
|
|
* lightning/ppc/core.h: Rename jit_prepare to
|
|
jit_prepare_i, jit_retval to jit_retval_i.
|
|
* lightning/i386/core.h: Rename jit_prepare to
|
|
jit_prepare_i, jit_retval to jit_retval_i.
|
|
* lightning/core-common.h: Provide backwards
|
|
compatible synonyms for the above.
|
|
* lightning/fp-common.h: Rewrite.
|
|
* lightning-inst.h: Include fp unconditionally.
|
|
* lightning.h.in: Include fp unconditionally.
|
|
* tests/Makefile.am: Enable fp tests.
|
|
* tests/fib.c: Use jit_retval_i.
|
|
* tests/fibit.c: Cast codeBuffer to char *.
|
|
* tests/funcfp.c: Use new fp macros.
|
|
* tests/printf.c: Use jit_retval_i.
|
|
* tests/rpnfp.c: Use new fp macros.
|
|
* tests/testfp.c: Use new fp macros.
|
|
|
|
2004-03-02 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core.h: generate correct code when
|
|
doing lt/le/ge/etc. on ESI and EDI. Use MOVZX/MOVSX
|
|
where possible.
|
|
* lightning/i386/asm.h: Add macros for MOVZX/MOVSX.
|
|
Move macros for x87 here, and add many of them.
|
|
* lightning/i386/fp.h: Use new macros for x87.
|
|
|
|
2004-02-06 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core.h: avoid generating MOV reg, reg.
|
|
* lightning/sparc/core.h: fix several bugs.
|
|
* lightning/ppc/core.h: fix several bugs.
|
|
* tests/rpn.c: rewritten.
|
|
|
|
2004-01-08 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* tests/rpnfp.c: new example, suggested by Basile
|
|
Starynkevitch.
|
|
* tests/rpnfp.ok: new example.
|
|
|
|
2003-12-12 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* tests/add.c: new test, suggested by Steve Dekorte.
|
|
* tests/add.c: new test.
|
|
|
|
2003-11-14 Paolo Bonzini <bonzini@gnu.org>
|
|
John Redford <eirenik@hotmail.com>
|
|
|
|
* lightning/asm-common.h: change the 'pc' field of _jit to
|
|
be a union of various data types, because ISO C99 doesn't
|
|
permit using ++ on a = cast. Change the incremented casts of
|
|
_jit.pc to be _jit.x.uc_pc, _jit.x.us_pc, etc.
|
|
* all files: change all non-cast instances of _jit.pc to be
|
|
_jit.x.pc.
|
|
* lightning/i386/core.h: remove casts from jit_might.
|
|
|
|
2003-05-25 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core.h: use JITSORRY in jit_replace
|
|
* lightning/asm-common.h: define JITSORRY
|
|
|
|
2003-05-14 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* lightning/i386/core.h: fix missing comma in several
|
|
load/store macros.
|
|
* lightning/core-common.h: fix long/unsigned long/pointer
|
|
jit_pushr/jit_popr.
|
|
* lightning/ppc/funcs.h: correctly align stack pointer
|
|
|
|
No changelogs for the assemblers (lightning directory) until 1.0
|
|
|
|
2003-03-27 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* tests/printf2.c: new test
|
|
|
|
2001-05-03 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* tests/printf.c: made the message platform independent
|
|
|
|
2001-01-19 Paolo Bonzini <bonzini@gnu.org>
|
|
|
|
* configure.in: support cross-assembling
|
|
|
|
* disass/bfd.h, disass/dis-asm.h, disass/dis-buf.c,
|
|
disass/i386-dis.c, disass/i386.h, disass/ppc-dis.c,
|
|
disass/ppc.h, disass/ppc-opc.c, disass/sparc-dis.c,
|
|
disass/sparc.h, disass/sparc-opc.c: new files, from GDB
|
|
|
|
* disass/disass.c, disass/Makefile.am: new files
|
|
|
|
* tests/fib.c, tests/fibit.c, tests/incr.c, tests/printf.c,
|
|
tests/rpn.c, tests/testfp.c, tests/Makefile.am: support
|
|
disassembling
|