]> git.unchartedbackwaters.co.uk Git - francis/libjit.git/log
francis/libjit.git
16 years agoFix calls to variadic functions.
Klaus Treichel [Wed, 10 Dec 2008 17:36:51 +0000 (17:36 +0000)]
Fix calls to variadic functions.

16 years agoupdate NEWS file
Aleksey Demakov [Wed, 10 Dec 2008 16:12:35 +0000 (16:12 +0000)]
update NEWS file

16 years agoMac OS X compatibility fixes
Aleksey Demakov [Sun, 23 Nov 2008 09:15:24 +0000 (09:15 +0000)]
Mac OS X compatibility fixes

17 years agoFix calling variadic functions ih jit_apply. Spill values with sizes less than
Klaus Treichel [Tue, 4 Nov 2008 19:49:12 +0000 (19:49 +0000)]
Fix calling variadic functions ih jit_apply. Spill values with sizes less than
sizeof jit_int as jit_int on the stack.

17 years agoupdate TODO
Aleksey Demakov [Sun, 12 Oct 2008 17:12:31 +0000 (17:12 +0000)]
update TODO

17 years agofix exception handling in interpreter
Aleksey Demakov [Sun, 12 Oct 2008 17:06:35 +0000 (17:06 +0000)]
fix exception handling in interpreter

17 years agofix typos
Aleksey Demakov [Sun, 12 Oct 2008 16:54:23 +0000 (16:54 +0000)]
fix typos

17 years agofix JIT_OP_TRUNC_INT, JIT_OP_TRUNC_UINT, JIT_OP_INCOMING_REG opcodes in interpreter
Aleksey Demakov [Sun, 5 Oct 2008 15:34:14 +0000 (15:34 +0000)]
fix JIT_OP_TRUNC_INT, JIT_OP_TRUNC_UINT, JIT_OP_INCOMING_REG opcodes in interpreter

17 years agoFix build on NetBSD to get the correct declaration of alloca.
Klaus Treichel [Thu, 7 Aug 2008 12:51:47 +0000 (12:51 +0000)]
Fix build on NetBSD to get the correct declaration of alloca.
This makes pnet work with libjit on NetBSD.

17 years agoAdd rules for one immediate value for float32 and float64 branch and setcc
Klaus Treichel [Sat, 26 Jul 2008 15:13:18 +0000 (15:13 +0000)]
Add rules for one immediate value for float32 and float64 branch and setcc
opcodes.

17 years agoAdd more tests using branches in tests/cond.pas.
Klaus Treichel [Sat, 19 Jul 2008 19:19:50 +0000 (19:19 +0000)]
Add more tests using branches in tests/cond.pas.
Rewrite float32/float64 compare and branch rules with consideration of nan
values.

17 years agoFix a bug in dpas with binary functions returning a boolean result where the
Klaus Treichel [Sat, 19 Jul 2008 10:20:51 +0000 (10:20 +0000)]
Fix a bug in dpas with binary functions returning a boolean result where the
result type was not recorded correctly.
Add tests for float comparisions where nan values are involved and add tests
for the *_inv opcodes (not (f1 op f2)).

17 years agoAdd branch and commutative options where applicable and replace chech for signed...
Klaus Treichel [Sun, 6 Jul 2008 14:00:42 +0000 (14:00 +0000)]
Add branch and commutative options where applicable and replace chech for signed 32bit immediate by imms32 clause.

17 years agofix problem with global registers and commutative ops
Aleksey Demakov [Sun, 6 Jul 2008 09:07:18 +0000 (09:07 +0000)]
fix problem with global registers and commutative ops

17 years agoadd unwinding interface
Aleksey Demakov [Thu, 29 May 2008 21:03:30 +0000 (21:03 +0000)]
add unwinding interface

17 years agominor code cleanup
Aleksey Demakov [Thu, 29 May 2008 18:53:00 +0000 (18:53 +0000)]
minor code cleanup

17 years agofix VirtualFree arguments; fix function signature leak;
Aleksey Demakov [Wed, 28 May 2008 06:13:47 +0000 (06:13 +0000)]
fix VirtualFree arguments; fix function signature leak;

17 years agoremove useless longjmp_label field from jit_builder_t struct
Aleksey Demakov [Tue, 27 May 2008 10:51:28 +0000 (10:51 +0000)]
remove useless longjmp_label field from jit_builder_t struct

17 years agoadd comments
Aleksey Demakov [Tue, 27 May 2008 07:37:00 +0000 (07:37 +0000)]
add comments

17 years agoAllow different float types at different offsets in the apply return struct.
Klaus Treichel [Mon, 26 May 2008 21:06:29 +0000 (21:06 +0000)]
Allow different float types at different offsets in the apply return struct.

17 years agoAdd the imms32 and imm32u keywords for support of signed and unsigned 32bit
Klaus Treichel [Mon, 26 May 2008 19:46:26 +0000 (19:46 +0000)]
Add the imms32 and imm32u keywords for support of signed and unsigned 32bit
immediate values.

17 years agoadd JIT_EXPORT_DATA macro to support win32 DLL idiosyncrasy
Aleksey Demakov [Mon, 26 May 2008 10:51:27 +0000 (10:51 +0000)]
add JIT_EXPORT_DATA macro to support win32 DLL idiosyncrasy

17 years agoAdd support for the param area for x86_64 and enable it by default (It's
Klaus Treichel [Sat, 24 May 2008 19:40:43 +0000 (19:40 +0000)]
Add support for the param area for x86_64 and enable it by default (It's
part of the X86_64 SysV abi).

17 years agoon win32 use VirtualAlloc and VirtualFree to allocate/free executable memory
Aleksey Demakov [Fri, 23 May 2008 14:53:30 +0000 (14:53 +0000)]
on win32 use VirtualAlloc and VirtualFree to allocate/free executable memory

17 years agoFix build with MS cl on windows and some ANSI C issues.
Klaus Treichel [Fri, 23 May 2008 11:00:42 +0000 (11:00 +0000)]
Fix build with MS cl on windows and some ANSI C issues.

17 years agoadd missing argument
Aleksey Demakov [Wed, 21 May 2008 16:00:30 +0000 (16:00 +0000)]
add missing argument

17 years agouse _JIT_ARCH_GET_NEXT_FRAME if defined; use gcc syntax only #ifdef __GNUC__
Aleksey Demakov [Wed, 21 May 2008 08:36:29 +0000 (08:36 +0000)]
use _JIT_ARCH_GET_NEXT_FRAME if defined; use gcc syntax only #ifdef __GNUC__

17 years agoInclude jit/jit-common.h instead of jit-internal.h to get the definitions of
Klaus Treichel [Mon, 12 May 2008 14:02:07 +0000 (14:02 +0000)]
Include jit/jit-common.h instead of jit-internal.h to get the definitions of
the libjit types because this file might be included at a time where
jit-apply-rules.h is not yet present. (it's used by tools/gen-apply.c)

17 years agolet register allocator free unused values that result from JIT_OP_INCOMING_REG and...
Aleksey Demakov [Thu, 8 May 2008 06:39:50 +0000 (06:39 +0000)]
let register allocator free unused values that result from JIT_OP_INCOMING_REG and JIT_OP_RETURN_REG instructions

17 years agoEmit the check for null only if the value to check is nint constant != 0 in
Klaus Treichel [Sun, 4 May 2008 16:53:08 +0000 (16:53 +0000)]
Emit the check for null only if the value to check is nint constant != 0 in
jit_insn_check_null.

17 years agoFix a bug with outgoing registers.
Klaus Treichel [Sun, 4 May 2008 15:06:33 +0000 (15:06 +0000)]
Fix a bug with outgoing registers.

17 years agocosmetic changes
Aleksey Demakov [Fri, 2 May 2008 18:16:32 +0000 (18:16 +0000)]
cosmetic changes

17 years agoignore autogenerated files
Aleksey Demakov [Tue, 22 Apr 2008 07:10:31 +0000 (07:10 +0000)]
ignore autogenerated files

17 years agorename configure.in to configure.ac
Aleksey Demakov [Tue, 22 Apr 2008 06:32:57 +0000 (06:32 +0000)]
rename configure.in to configure.ac

17 years agoupdate configure.in for modern autoconf
Aleksey Demakov [Tue, 22 Apr 2008 06:13:09 +0000 (06:13 +0000)]
update configure.in for modern autoconf

17 years agoupdate TODO list
Aleksey Demakov [Tue, 22 Apr 2008 03:29:48 +0000 (03:29 +0000)]
update TODO list

17 years agocode cleanup wrt unnecessary common_binary() use
Aleksey Demakov [Sun, 20 Apr 2008 20:24:57 +0000 (20:24 +0000)]
code cleanup wrt unnecessary common_binary() use

17 years agoAdd more testcases.
Klaus Treichel [Sun, 20 Apr 2008 10:44:02 +0000 (10:44 +0000)]
Add more testcases.

17 years agofix LSIGN opcode and modify ISIGN opcode for symmetry
Aleksey Demakov [Sun, 20 Apr 2008 08:10:46 +0000 (08:10 +0000)]
fix LSIGN opcode and modify ISIGN opcode for symmetry

17 years agofix the type of dest value of jit_insn_sign
Aleksey Demakov [Sat, 19 Apr 2008 13:48:50 +0000 (13:48 +0000)]
fix the type of dest value of jit_insn_sign

17 years agoAdd support for more opcodes on x86-64.
Klaus Treichel [Sun, 13 Apr 2008 17:55:36 +0000 (17:55 +0000)]
Add support for more opcodes on x86-64.

17 years agouse architecture-specific macros for x86-64 stack walking instead of gcc's builtins
Aleksey Demakov [Sun, 13 Apr 2008 16:14:15 +0000 (16:14 +0000)]
use architecture-specific macros for x86-64 stack walking instead of gcc's builtins

17 years agoFix the sign opcode on x86 for integers and the constant case for longs.
Klaus Treichel [Mon, 31 Mar 2008 19:31:41 +0000 (19:31 +0000)]
Fix the sign opcode on x86 for integers and the constant case for longs.

17 years agoFix the integer sign functions. Return 1 for values > 0 instead of 0.
Klaus Treichel [Sun, 30 Mar 2008 16:05:57 +0000 (16:05 +0000)]
Fix the integer sign functions. Return 1 for values > 0 instead of 0.

17 years agoAdd additional macros and opcodehandling for x86-64.
Klaus Treichel [Sun, 30 Mar 2008 15:05:13 +0000 (15:05 +0000)]
Add additional macros and opcodehandling for x86-64.

17 years agoFix signed division of a negative value by a positive power of two on x86.
Klaus Treichel [Sat, 29 Mar 2008 18:45:24 +0000 (18:45 +0000)]
Fix signed division of a negative value by a positive power of two on x86.

17 years agoKlaus' apply changes needed for x86-64
Aleksey Demakov [Sat, 29 Mar 2008 15:01:36 +0000 (15:01 +0000)]
Klaus' apply changes needed for x86-64

17 years agofix return code of interpreter version of jit_function_apply_vararg
Aleksey Demakov [Tue, 25 Mar 2008 05:13:35 +0000 (05:13 +0000)]
fix return code of interpreter version of jit_function_apply_vararg

17 years agoAdd more X86_64 support.
Klaus Treichel [Mon, 24 Mar 2008 12:42:50 +0000 (12:42 +0000)]
Add more X86_64 support.

17 years agoReset the epilog fixup list prior to restarting compilation of a function.
Klaus Treichel [Mon, 24 Mar 2008 11:43:59 +0000 (11:43 +0000)]
Reset the epilog fixup list prior to restarting compilation of a function.

17 years agoFix make distcheck.
Klaus Treichel [Tue, 4 Mar 2008 20:36:17 +0000 (20:36 +0000)]
Fix make distcheck.

17 years agomodify cache algorithm to allow a method to occupy more than one page
Aleksey Demakov [Mon, 3 Mar 2008 14:49:06 +0000 (14:49 +0000)]
modify cache algorithm to allow a method to occupy more than one page

17 years agoFix two 64bit arch issues and add first (not pubic usable) native support for
Klaus Treichel [Sun, 2 Mar 2008 17:07:05 +0000 (17:07 +0000)]
Fix two 64bit arch issues and add first (not pubic usable) native support for
X86_64.

17 years agoadd jump table support to jitplus interface
Aleksey Demakov [Fri, 29 Feb 2008 11:10:41 +0000 (11:10 +0000)]
add jump table support to jitplus interface

17 years agouse LGPL 2.1 for dpas, tools, tests, and doc
Aleksey Demakov [Wed, 27 Feb 2008 08:53:40 +0000 (08:53 +0000)]
use LGPL 2.1 for dpas, tools, tests, and doc

17 years agorestore auto_gen.sh
Aleksey Demakov [Wed, 6 Feb 2008 10:03:11 +0000 (10:03 +0000)]
restore auto_gen.sh

17 years agoupdate license and copyright notice
Aleksey Demakov [Wed, 6 Feb 2008 09:47:09 +0000 (09:47 +0000)]
update license and copyright notice

17 years agoFix typo in jit/Makefile.am (and ChangeLog)
Klaus Treichel [Wed, 30 Jan 2008 19:26:46 +0000 (19:26 +0000)]
Fix typo in jit/Makefile.am (and ChangeLog)

17 years agoAdd first set of codegeneration macros and closure support for x86_64.
Klaus Treichel [Tue, 29 Jan 2008 20:16:32 +0000 (20:16 +0000)]
Add first set of codegeneration macros and closure support for x86_64.

17 years agoremove auto_gen.sh, remove automatically generated files
Aleksey Demakov [Fri, 25 Jan 2008 23:06:31 +0000 (23:06 +0000)]
remove auto_gen.sh, remove automatically generated files

17 years agouse LGPL 2.1 for libjit
Aleksey Demakov [Thu, 24 Jan 2008 20:12:48 +0000 (20:12 +0000)]
use LGPL 2.1 for libjit

17 years agoadd LGPL v2.1 file
Aleksey Demakov [Tue, 22 Jan 2008 06:44:10 +0000 (06:44 +0000)]
add LGPL v2.1 file

17 years agofix texinfo markup for parameters
Aleksey Demakov [Tue, 22 Jan 2008 06:09:07 +0000 (06:09 +0000)]
fix texinfo markup for parameters

17 years agoadd missing file to the source list
Aleksey Demakov [Mon, 21 Jan 2008 18:02:53 +0000 (18:02 +0000)]
add missing file to the source list

17 years agoupdate the COPYING file to the latest edition of GPLv2 (new FSF address and minor...
Aleksey Demakov [Sat, 19 Jan 2008 03:27:46 +0000 (03:27 +0000)]
update the COPYING file to the latest edition of GPLv2 (new FSF address and minor formatting changes)

17 years agoFix bug in x86_memindex_emit with displacements outside the x86_int8 range.
Klaus Treichel [Wed, 16 Jan 2008 17:45:16 +0000 (17:45 +0000)]
Fix bug in x86_memindex_emit with displacements outside the x86_int8 range.

17 years agoadd TODO file
Aleksey Demakov [Fri, 11 Jan 2008 06:30:32 +0000 (06:30 +0000)]
add TODO file

17 years agoAdd the nint argument to the return_small_struct and flush_small_struct opcodes.
Klaus Treichel [Fri, 4 Jan 2008 17:15:49 +0000 (17:15 +0000)]
Add the nint argument to the return_small_struct and flush_small_struct opcodes.

17 years agofix fixups for interpreter
Aleksey Demakov [Thu, 3 Jan 2008 17:01:16 +0000 (17:01 +0000)]
fix fixups for interpreter

17 years agoAdd the nint argument to the copy_struct opcode.
Klaus Treichel [Thu, 3 Jan 2008 08:50:21 +0000 (08:50 +0000)]
Add the nint argument to the copy_struct opcode.

17 years agoFix the call to jit_memcpy in jit_builtin_apply.
Klaus Treichel [Mon, 31 Dec 2007 13:42:09 +0000 (13:42 +0000)]
Fix the call to jit_memcpy in jit_builtin_apply.

17 years agofix date
Aleksey Demakov [Sat, 29 Dec 2007 04:05:35 +0000 (04:05 +0000)]
fix date

17 years agofix interpreter JIT_OP_LCMP_UN opcode
Aleksey Demakov [Fri, 28 Dec 2007 19:53:36 +0000 (19:53 +0000)]
fix interpreter JIT_OP_LCMP_UN opcode

17 years agoFix some opcodes in the interpreter backend.
Klaus Treichel [Fri, 28 Dec 2007 19:31:14 +0000 (19:31 +0000)]
Fix some opcodes in the interpreter backend.

17 years agoadd x86 JIT_OP_NFLOAT_TO_INT and JIT_OP_NFLOAT_TO_LONG rules
Aleksey Demakov [Sun, 23 Dec 2007 18:18:44 +0000 (18:18 +0000)]
add x86 JIT_OP_NFLOAT_TO_INT and JIT_OP_NFLOAT_TO_LONG rules

17 years agofix on-demand compilation for interpreter
Aleksey Demakov [Fri, 21 Dec 2007 06:42:45 +0000 (06:42 +0000)]
fix on-demand compilation for interpreter

17 years agoupdate tutorial wrt recomplation
Aleksey Demakov [Thu, 20 Dec 2007 17:31:50 +0000 (17:31 +0000)]
update tutorial wrt recomplation

17 years agoremove jit_function_recompile
Aleksey Demakov [Thu, 20 Dec 2007 13:47:22 +0000 (13:47 +0000)]
remove jit_function_recompile

17 years agoAdd missed ChangeLog entries.
Klaus Treichel [Mon, 17 Dec 2007 17:57:28 +0000 (17:57 +0000)]
Add missed ChangeLog entries.

17 years agoAdd support for multi os archs. Fix jit_builtin_apply for x86_64 by adding
Klaus Treichel [Sun, 16 Dec 2007 11:46:53 +0000 (11:46 +0000)]
Add support for multi os archs. Fix jit_builtin_apply for x86_64 by adding
r10 and r11 to the clobber list. Fix compiler warnings in
_JIT_ALIGN_CHECK_TYPE.

17 years agofix compiler warnings
Aleksey Demakov [Tue, 27 Nov 2007 07:11:46 +0000 (07:11 +0000)]
fix compiler warnings

17 years agodo not start new basic block on the bytecode mark
Aleksey Demakov [Sat, 17 Nov 2007 02:12:36 +0000 (02:12 +0000)]
do not start new basic block on the bytecode mark
fix offset for the last mark

18 years agoadd missing header for macosx into distribution
Aleksey Demakov [Tue, 13 Nov 2007 09:19:23 +0000 (09:19 +0000)]
add missing header for macosx into distribution

18 years agofix a typo and add a wrapper for jit_function_reserve_label for jitplus
Aleksey Demakov [Thu, 8 Nov 2007 17:31:42 +0000 (17:31 +0000)]
fix a typo and add a wrapper for jit_function_reserve_label for jitplus

18 years agoextend comments for jit_insn_jump_table
Aleksey Demakov [Sun, 7 Oct 2007 14:20:34 +0000 (14:20 +0000)]
extend comments for jit_insn_jump_table

18 years agoadd jit_function_reserve_label function
Aleksey Demakov [Sun, 7 Oct 2007 14:16:50 +0000 (14:16 +0000)]
add jit_function_reserve_label function

18 years agofix jump table code generation
Aleksey Demakov [Sun, 7 Oct 2007 14:01:02 +0000 (14:01 +0000)]
fix jump table code generation

18 years agoreimplement optimization of relative instructions for the sake of correctness
Aleksey Demakov [Mon, 11 Jun 2007 06:06:55 +0000 (06:06 +0000)]
reimplement optimization of relative instructions for the sake of correctness

18 years agodisable copy propagation if JIT_OP_COPY_INT is applied to bytes and shorts;
Aleksey Demakov [Sun, 10 Jun 2007 16:26:22 +0000 (16:26 +0000)]
disable copy propagation if JIT_OP_COPY_INT is applied to bytes and shorts;
some tweaks for better code generation of copy instructions

18 years agoadd comments for readability of conversion tables in jit_insn_convert
Aleksey Demakov [Sat, 9 Jun 2007 16:59:29 +0000 (16:59 +0000)]
add comments for readability of conversion tables in jit_insn_convert

18 years agodo not use copy propagation for addressable and volatile values
Aleksey Demakov [Mon, 28 May 2007 09:00:54 +0000 (09:00 +0000)]
do not use copy propagation for addressable and volatile values

18 years agoimplement simple-minded copy propagation
Aleksey Demakov [Mon, 28 May 2007 02:41:28 +0000 (02:41 +0000)]
implement simple-minded copy propagation

18 years agoFix conversion from ulong to nfloat for values greater than jit_max_long.
Klaus Treichel [Sat, 26 May 2007 14:13:22 +0000 (14:13 +0000)]
Fix conversion from ulong to nfloat for values greater than jit_max_long.

18 years agoremove incorrect optimization in jit_insn_store()
Aleksey Demakov [Sat, 26 May 2007 13:47:31 +0000 (13:47 +0000)]
remove incorrect optimization in jit_insn_store()

18 years agofix compilation for archs without register stack
Aleksey Demakov [Wed, 4 Apr 2007 02:52:05 +0000 (02:52 +0000)]
fix compilation for archs without register stack

18 years agoupdate working version to 0.1.1
Aleksey Demakov [Sun, 4 Mar 2007 16:15:34 +0000 (16:15 +0000)]
update working version to 0.1.1

18 years agoadd doc scripts to EXTRA_DIST; add jit-arch.h to BUILT_SOURCES
Aleksey Demakov [Sat, 3 Mar 2007 18:00:10 +0000 (18:00 +0000)]
add doc scripts to EXTRA_DIST; add jit-arch.h to BUILT_SOURCES

18 years agoUpdates for the 0.1.0 release
Aleksey Demakov [Sat, 3 Mar 2007 14:12:16 +0000 (14:12 +0000)]
Updates for the 0.1.0 release

18 years agofix problem with ops that have x87 dest register and no x87 input registers
Aleksey Demakov [Sat, 24 Feb 2007 19:17:25 +0000 (19:17 +0000)]
fix problem with ops that have x87 dest register and no x87 input registers

18 years agocompile_block() checks if code cache is full
Aleksey Demakov [Thu, 15 Feb 2007 07:31:05 +0000 (07:31 +0000)]
compile_block() checks if code cache is full