]>
git.unchartedbackwaters.co.uk Git - francis/libjit.git/log
Aleksey Demakov [Fri, 12 Oct 2012 18:34:58 +0000 (22:34 +0400)]
Rename jit-memory.c to jit-util.c
Aleksey Demakov [Fri, 12 Oct 2012 18:19:18 +0000 (22:19 +0400)]
Remove jit/jit-memory.h
Aleksey Demakov [Fri, 12 Oct 2012 17:34:26 +0000 (21:34 +0400)]
Make _jit_cache_create() figure cache parameters from context metadata itself.
Aleksey Demakov [Tue, 9 Oct 2012 17:36:46 +0000 (21:36 +0400)]
Ifdef out _jit_cache_alloc_no_method().
Aleksey Demakov [Mon, 8 Oct 2012 17:38:26 +0000 (21:38 +0400)]
Add functions to alloc and free trampoline and closure code memory.
Aleksey Demakov [Sun, 7 Oct 2012 11:19:16 +0000 (15:19 +0400)]
Allocate jit_functions within cache.
Aleksey Demakov [Wed, 3 Oct 2012 23:21:33 +0000 (03:21 +0400)]
Minor reformatting in jit-apply.c.
Aleksey Demakov [Wed, 3 Oct 2012 23:19:12 +0000 (03:19 +0400)]
tweak code cache API
Aleksey Demakov [Tue, 2 Oct 2012 22:19:59 +0000 (02:19 +0400)]
Slight reformatting.
Aleksey Demakov [Sun, 29 Jul 2012 07:32:23 +0000 (11:32 +0400)]
Rename _jit_cache_get_method() to _jit_cache_get_function()
Aleksey Demakov [Sun, 29 Jul 2012 07:01:29 +0000 (11:01 +0400)]
Refactor function cache allocation API.
Merge branch 'master' into cache-refactoring
Conflicts:
ChangeLog
Aleksey Demakov [Sat, 11 Feb 2012 09:12:39 +0000 (12:12 +0300)]
A little bit more jit-cache cleanup
Klaus Treichel [Sun, 22 Jan 2012 10:50:25 +0000 (11:50 +0100)]
Move declaration of obsolete opcodes to a separate include file.
Aleksey Demakov [Sat, 21 Jan 2012 19:11:21 +0000 (22:11 +0300)]
move part of the jit cache functionality elsewhere, remove unused functionality
Aleksey Demakov [Sun, 18 Dec 2011 11:25:23 +0000 (14:25 +0300)]
add jit-varint.[hc] files with refactored int compression
Aleksey Demakov [Fri, 30 Sep 2011 09:08:21 +0000 (16:08 +0700)]
remove CountMethods(), FillMethodList() functions
Aleksey Demakov [Fri, 30 Sep 2011 05:23:47 +0000 (12:23 +0700)]
removed _jit_cache_new_region() function
Aleksey Demakov [Sat, 3 Sep 2011 14:33:09 +0000 (21:33 +0700)]
remove _jit_cache_get_method_list() function
Aleksey Demakov [Wed, 27 Jul 2011 17:07:32 +0000 (00:07 +0700)]
added virtual memory routines
Aleksey Demakov [Sat, 9 Jul 2011 18:18:42 +0000 (01:18 +0700)]
fix problem with shift opcodes on x86
Aleksey Demakov [Fri, 1 Jul 2011 20:00:31 +0000 (03:00 +0700)]
amend debug info in compile_block()
Klaus Treichel [Sun, 28 Nov 2010 19:04:32 +0000 (20:04 +0100)]
Dump the destination value for the address_of_label opcode.
Klaus Treichel [Sun, 7 Nov 2010 09:20:28 +0000 (10:20 +0100)]
Fix comment for _jit_cache_get_end_method.
Klaus Treichel [Sun, 24 Oct 2010 09:00:21 +0000 (11:00 +0200)]
Set in_global_register on global register assignment so that the value
is expected to be in the global register in blocks before any assignment
to the value occurred to handle back branches correctly.
Klaus Treichel [Mon, 4 Oct 2010 18:08:45 +0000 (20:08 +0200)]
Add missing typedef in the declaration of the _jit_intrinsic_signature
enumaeration in jit/jit-internal.h . (Really Noah Lavine)
Klaus Treichel [Tue, 21 Sep 2010 17:59:53 +0000 (19:59 +0200)]
Fix build on 32bit archs.
Klaus Treichel [Tue, 21 Sep 2010 17:42:01 +0000 (19:42 +0200)]
Add support for applying an opcode to one or two constant values.
Klaus Treichel [Sun, 12 Sep 2010 15:31:22 +0000 (17:31 +0200)]
Fix a typo.
Klaus Treichel [Sun, 12 Sep 2010 15:25:28 +0000 (17:25 +0200)]
Remove the *eq_inv and *ne_inv float compare and branch opcodes because
they behave exactly the same as the corresponding opcodes without the
_inv suffix.
Klaus Treichel [Tue, 10 Aug 2010 13:59:16 +0000 (15:59 +0200)]
Fix arg1 for the address_of opcode.
Klaus Treichel [Mon, 9 Aug 2010 12:00:38 +0000 (14:00 +0200)]
Add support for some of the new opcodes for x86_64.
Klaus Treichel [Sun, 8 Aug 2010 16:37:52 +0000 (18:37 +0200)]
Add support for some of the new opcodes for x86.
Add tests for integer/float conversions.
Klaus Treichel [Sat, 7 Aug 2010 06:05:51 +0000 (08:05 +0200)]
Add opcodes for direct conversions from and to 32-bit and 64-bit
floatingpoint values.
Klaus Treichel [Fri, 6 Aug 2010 11:12:52 +0000 (13:12 +0200)]
Add jitplus support for the new trunc insn.
Klaus Treichel [Fri, 6 Aug 2010 10:07:56 +0000 (12:07 +0200)]
Refine comments for the rounding functions.
Klaus Treichel [Fri, 6 Aug 2010 09:30:02 +0000 (11:30 +0200)]
Add new trunc insn for rounding float values towards zero.
Klaus Treichel [Fri, 6 Aug 2010 07:15:33 +0000 (09:15 +0200)]
Add new wounding intrinsics for rounding float values towards zero.
Klaus Treichel [Wed, 4 Aug 2010 11:41:00 +0000 (13:41 +0200)]
Add jit-arch.h to the ignore list.
Klaus Treichel [Wed, 4 Aug 2010 11:37:38 +0000 (13:37 +0200)]
Break the circular build dependency between the include and tools
directories.
Don't include jit-arch.h in the disribution because it has to be recreated
in every case.
Klaus Treichel [Tue, 3 Aug 2010 11:50:47 +0000 (13:50 +0200)]
Add new built files to the ignore list.
Klaus Treichel [Tue, 3 Aug 2010 09:44:07 +0000 (11:44 +0200)]
Add gen-ops tool for generation all opcode defintions ans tables from one
source.
Add sources for basic libjit opcodes and interpreter specific libjit
opcodes.
Aleksey Demakov [Mon, 31 May 2010 08:25:53 +0000 (15:25 +0700)]
Allow empty block branch optimization for address-of blocks
Aleksey Demakov [Fri, 21 May 2010 22:23:34 +0000 (05:23 +0700)]
MacOS X x86-64 build fix
Klaus Treichel [Sat, 15 May 2010 17:32:36 +0000 (19:32 +0200)]
Fix strict-alias-rules in return struct tests.
Klaus Treichel [Sat, 15 May 2010 12:49:05 +0000 (14:49 +0200)]
Fix comment for texinfo generation.
Klaus Treichel [Sat, 15 May 2010 12:46:37 +0000 (14:46 +0200)]
Add intrinsics for direct conversion from float32 and float64 to the
various integer types and float32 to float64 and vice versa.
Klaus Treichel [Sat, 8 May 2010 12:59:50 +0000 (14:59 +0200)]
Don't merge an empty block if the address of the block was used.
Klaus Treichel [Sun, 24 Jan 2010 09:47:51 +0000 (10:47 +0100)]
Fix accesses to possibly freed memory.
Aleksey Demakov [Wed, 9 Dec 2009 18:00:16 +0000 (00:00 +0600)]
Bail out on previously assigned label
Aleksey Demakov [Wed, 9 Dec 2009 13:55:08 +0000 (19:55 +0600)]
fix block clean problems
Aleksey Demakov [Sun, 1 Nov 2009 06:14:50 +0000 (12:14 +0600)]
implement the "combine" part of the clean algorithm
Klaus Treichel [Sat, 31 Oct 2009 14:57:28 +0000 (15:57 +0100)]
Add support for the alloca opcode on X86_64.
Changes based on a patch from Peter Lobsinger <plobsing@gmail.com>
Klaus Treichel [Sat, 31 Oct 2009 08:59:22 +0000 (09:59 +0100)]
Fix compiler warnings where sizeof(int) != sizeof(void *)
Aleksey Demakov [Fri, 30 Oct 2009 16:32:09 +0000 (22:32 +0600)]
add jit_function_labels_equal() function
Aleksey Demakov [Fri, 30 Oct 2009 07:47:14 +0000 (13:47 +0600)]
clean outgoing registers after calls
Aleksey Demakov [Thu, 29 Oct 2009 22:41:57 +0000 (04:41 +0600)]
handle codegen errors with internal exceptions
Aleksey Demakov [Thu, 29 Oct 2009 22:27:36 +0000 (04:27 +0600)]
use internal exception to handle the cache full conditions
Aleksey Demakov [Thu, 29 Oct 2009 22:15:05 +0000 (04:15 +0600)]
Add JIT_RESULT_CACHE_FULL internal exception;
Add _jit_check_cache_space function.
Gopal V [Tue, 13 Oct 2009 16:05:11 +0000 (21:35 +0530)]
redo the last patch to use branch instructions, but without removing the actual compare instructions
Gopal V [Thu, 8 Oct 2009 19:07:43 +0000 (00:37 +0530)]
update ChangeLog
Gopal V [Thu, 8 Oct 2009 18:59:38 +0000 (00:29 +0530)]
remove the premature optimization of compare & branch operations
Aleksey Demakov [Tue, 4 Aug 2009 14:20:13 +0000 (21:20 +0700)]
remove dead code
Aleksey Demakov [Mon, 3 Aug 2009 17:30:00 +0000 (00:30 +0700)]
avoid jump tables while cleaning branches
Aleksey Demakov [Wed, 10 Jun 2009 10:01:54 +0000 (17:01 +0700)]
add JIT_OP_BR_LFALSE rule for x86
Aleksey Demakov [Tue, 9 Jun 2009 21:09:05 +0000 (04:09 +0700)]
update .gitignore files
Aleksey Demakov [Tue, 9 Jun 2009 21:03:50 +0000 (04:03 +0700)]
update .gitignore files
Aleksey Demakov [Tue, 9 Jun 2009 20:51:57 +0000 (03:51 +0700)]
add JIT_OP_BR_LTRUE opcode for x86
Klaus Treichel [Sat, 6 Jun 2009 09:15:09 +0000 (11:15 +0200)]
rename .cvsimport to .gitimport
Aleksey Demakov [Fri, 5 Jun 2009 23:31:50 +0000 (23:31 +0000)]
move compile functions from jit-function.c to a new file jit-compile.c;
handle internal exceptions during compilation;
optimize CFG by default but add possibility to turn optimization off;
add jit_optimize function.
Aleksey Demakov [Fri, 5 Jun 2009 17:03:10 +0000 (17:03 +0000)]
add JIT_OPTLEVEL_NONE and JIT_OPTLEVEL_NORMAL constants
Aleksey Demakov [Mon, 11 May 2009 13:03:43 +0000 (13:03 +0000)]
increase messages array size
Aleksey Demakov [Sun, 10 May 2009 16:01:08 +0000 (16:01 +0000)]
add JIT_RESULT_UNDEFINED_LABEL builtin error
Aleksey Demakov [Sat, 9 May 2009 21:54:31 +0000 (21:54 +0000)]
allow multiple labels for single block
Aleksey Demakov [Fri, 8 May 2009 23:33:41 +0000 (23:33 +0000)]
basic block changes
Aleksey Demakov [Thu, 30 Apr 2009 03:45:09 +0000 (03:45 +0000)]
cosmetic changes
Aleksey Demakov [Thu, 30 Apr 2009 03:24:34 +0000 (03:24 +0000)]
indent
Aleksey Demakov [Wed, 29 Apr 2009 12:37:51 +0000 (12:37 +0000)]
build CFG, optimize branches and remove unreachable blocks with CFG, remove _jit_block_peephole_branch() function
Aleksey Demakov [Tue, 28 Apr 2009 22:42:42 +0000 (22:42 +0000)]
remove jit-cfg.h and jit-cfg.c from the build, leave them in the tree for reference
Aleksey Demakov [Tue, 28 Apr 2009 22:33:54 +0000 (22:33 +0000)]
create a new block after call_finally
Aleksey Demakov [Tue, 28 Apr 2009 22:27:55 +0000 (22:27 +0000)]
return jit_label_undefined instead of 0 from jit_block_get_label()
Aleksey Demakov [Fri, 24 Apr 2009 13:35:17 +0000 (13:35 +0000)]
ARM backend fixes
Aleksey Demakov [Wed, 22 Apr 2009 11:58:27 +0000 (11:58 +0000)]
for function calls end basic block after the call rather than before and only if the call may throw
Aleksey Demakov [Tue, 21 Apr 2009 14:34:34 +0000 (14:34 +0000)]
fix call_finally dump
Aleksey Demakov [Thu, 16 Apr 2009 13:39:39 +0000 (13:39 +0000)]
ARM backend fixes
Aleksey Demakov [Thu, 16 Apr 2009 05:38:54 +0000 (05:38 +0000)]
regalloc bugfix
Aleksey Demakov [Tue, 7 Apr 2009 07:36:45 +0000 (07:36 +0000)]
let struct alignment be greater than alignment of fields
Aleksey Demakov [Sat, 28 Mar 2009 09:58:19 +0000 (09:58 +0000)]
fix typos
Aleksey Demakov [Sat, 28 Mar 2009 01:29:43 +0000 (01:29 +0000)]
cosmetic changes
Aleksey Demakov [Sat, 28 Mar 2009 00:11:38 +0000 (00:11 +0000)]
make register pair handling more flexible
Aleksey Demakov [Fri, 27 Mar 2009 21:00:13 +0000 (21:00 +0000)]
remove _jit_regs_get_cpu function
Aleksey Demakov [Wed, 25 Mar 2009 17:33:48 +0000 (17:33 +0000)]
arm fixes
Aleksey Demakov [Tue, 24 Mar 2009 16:12:40 +0000 (16:12 +0000)]
use jit_reg_other_reg
Aleksey Demakov [Tue, 24 Mar 2009 15:59:56 +0000 (15:59 +0000)]
add global jit_reg_other_reg macro to replace local reg-alloc OTHER_REG
Aleksey Demakov [Tue, 24 Mar 2009 01:17:44 +0000 (01:17 +0000)]
arm idiv and memset opcodes
Aleksey Demakov [Tue, 24 Mar 2009 00:56:35 +0000 (00:56 +0000)]
fix typo
Aleksey Demakov [Mon, 23 Mar 2009 13:51:04 +0000 (13:51 +0000)]
cleanup arm rules
Aleksey Demakov [Mon, 23 Mar 2009 13:14:22 +0000 (13:14 +0000)]
more mikyt's ARM code
Aleksey Demakov [Mon, 23 Mar 2009 12:49:24 +0000 (12:49 +0000)]
cosmetic changes
Aleksey Demakov [Sun, 22 Mar 2009 21:33:27 +0000 (21:33 +0000)]
restore ARM FPA rules
Aleksey Demakov [Sun, 22 Mar 2009 21:22:05 +0000 (21:22 +0000)]
add ARM codegen macros