Alien-LibJIT

 view release on metacpan or  search on metacpan

libjit/ChangeLog  view on Meta::CPAN

	address (thanks Alexey Galakhov <agalakhov@gmail.com> for spotting).

	* jit/Makefile.am, jit/jit-apply-alpha.h, jit/jit-apply-alpha.c
	* jit/jit-gen-alpha.h, jit/jit-rules-alpha.h, jit/jit-rules-alpha.c
	* jit/jit-rules-alpha.ins: Remove all alpha related files from the
	distro. The files are still in the repo in the attic dir.

2013-02-26  Aleksey Demakov  <ademakov@gmail.com>

	* configure.ac, jit/jit-opcodes.ops, jit/jit-interp-opcode.ops
	* Makefile.am, jit/Makefile.am, include/jit/Makefile.am: Move ops
	files from the config to jit dir, remove the config dir.

	* configure.ac: Use build-aux dir for autoconf files. Update the
	mailing list address.

2012-11-06  Aleksey Demakov  <ademakov@gmail.com>

	* dpas/dpas-scope.c (dpas_scope_destroy): Fix a memory leak in dpas.

	* include/jit/jit-memory.h, jit/jit-internal.h, jit/jit-memory.c
	* jit-cache.c: restore ability to allocate memory for recompiled
	functions.

2012-11-05  Aleksey Demakov  <ademakov@gmail.com>

	* jitplus/jit-plus-function.cpp (create): free function signature.
	* tutorial/t3.c, tutorial/t3.c: free function signature.

2012-10-30  Aleksey Demakov  <ademakov@gmail.com>

	* tutorial/t1.c, tutorial/t2.c: free function signature.

	* jit/jit-block.c (delete_block): fix memory leak.

	* jit/jit-memory-cache.c: rename jit-cache.c

2012-10-20  Aleksey Demakov  <ademakov@gmail.com>

	* include/jit/jit-memory.h, jit/jit-internal.h, jit/jit-memory.c
	* jit-cache.c: get back to the scheme where function start and end
	addresses are kept by the memory manager, not in jit_function_t.

2012-10-16  Aleksey Demakov  <ademakov@gmail.com>

	* include/jit/jit-memory.h: add file that defines pluggable memory
	manager interface.
	* jit-internal.h, jit/jit-memory.c: add a number of _jit_memory_*
	pluggable memory wrapper functions. Replace with these wrappers
	all _jit_cache_* calls.
	* jit/jit-cache.c (jit_default_memory_manager): add function that
	gets memory mamnager plugin interface.
	* jit/jit-cache.h: remove file.
	* include/jit/jit-context.h:
	* jit/jit-context.c (jit_context_set_memory_manager): add function.

2012-10-12  Aleksey Demakov  <ademakov@gmail.com>

	* include/jit/jit-util.h, jit/jit-alloc.c (jit_malloc_exec)
	(jit_free_exec, jit_flush_exec, jit_exec_page_size): remove functions
	from public API.
	* jit/jit-internal.h, jit/jit-alloc.c (_jit_malloc_exec)
	(_jit_free_exec, _jit_flush_exec): make these functions internal.

	* jit/jit-util.c: new file, move here all public util functions from
	jit/jit-alloc.c, jit/jit-memory.c, jit/jit-string.c.

2012-10-08  Aleksey Demakov  <ademakov@gmail.com>

	* jit/jit-cache.c, jit/jit-cache.c(_jit_cache_alloc_trampoline)
	(_jit_cache_free_trampoline, _jit_cache_alloc_closure)
	(_jit_cache_free_closure): add functions.
	* jit/jit-function.c (jit_function_create, _jit_function_destroy):
	use trampoline alloc/free functions.

	* jit/jit-apply.c, include/jit/jit-init.h (jit_get_closure_size)
	(jit_get_closure_alignment, jit_get_trampoline_size)
	(jit_get_trampoline_alignment): add functions.
	* jit/jit-apply.c (jit_closures_supported): for consistency rename
	function to jit_supports_closures.

2012-10-07  Aleksey Demakov  <ademakov@gmail.com>

	* jit/jit-function.c (jit_function_create, _jit_function_destroy):
	* jit/jit-cache.h, jit/jit-cache.c (_jit_cache_alloc_function)
	(_jit_cache_free_function): allocate and free jit_function structs
	within cache.

2012-10-04  Aleksey Demakov  <ademakov@gmail.com>

	* jit/jit-cache.h, jit/jit-cache.c (_jit_cache_start_function):
	remove the restart_count argument.
	* jit/jit-cache.h, jit/jit-cache.c (_jit_cache_extend): add
	function to allocate more cache space.
	* jit/jit-cache.c (_jit_cache_alloc_data): let be called outside
	function generation context.

2012-07-29  Aleksey Demakov  <ademakov@gmail.com>

	* jit/jit-cache.h, jit/jit-cache.c (_jit_cache_start_function)
	(_jit_cache_end_function, _jit_cache_get_code_break)
	(_jit_cache_set_code_break, _jit_cache_get_code_limit)
	(_jit_cache_alloc_data): new API for function allocation.
	* jit/jit-cache.h, jit/jit-cache.c (_jit_cache_is_full)
	(_jit_cache_start_method, _jit_cache_end_method)
	(_jit_cache_alloc, _jit_cache_check_space): remove.
	* jit/jit-cache.h, jit/jit-rules.h: remove jit_cache_posn struct.
	Store the cache position data in jit_gencode struct.
	* jit/jit-rules.h, jit/jit-rules.c: (_jit_gen_check_space)
	(_jit_gen_alloc): add.
	* jit/jit-cache.h, jit/jit-cache.c (_jit_cache_get_function):
	rename from _jit_cache_get_method. 

2012-02-11  Aleksey Demakov  <ademakov@gmail.com>

	* jit/jit-cache.h, jit/jit-cache.c (_jit_cache_end_method): add
	result argument that indicates if the code genration will need
	to be restarted.
	* jit/jit-cache.h, jit/jit-cache.c (jit_cache_mark_full): remove
	macro and replace it with direct jit_cache_posn access where
	appropriate.
	* jit/jit-cache.h, jit/jit-cache.c (jit_cache_get_posn): likewise.
	* jit/jit-cache.h, jit/jit-rules-interp.c (jit_cache_native): move
	macro to where it only used.
	* jit/jit-cache.h, jit/jit-cache.c: remove other unused stuff.

libjit/ChangeLog  view on Meta::CPAN

2004-05-11  Rhys Weatherley  <rweather@southern-storm.com.au>

	* include/jit/jit-insn.h, jit/jit-insn.c, jit/jit-interp.cpp,
	jit/jit-interp.h, jit/jit-opcode.c, jit/jit-rules-interp.c:
	round out the function call handling opcodes for the interpreter.

	* jit/jit-rules-interp.c, jit/jit-rules-interp.h: implement
	the exception-handling opcodes for the interpreter.

	* dpas/dpas-parser.y, dpas/dpas-scope.c, dpas/dpas-scope.h:
	fix a bug that caused global variables in Dynamic Pascal
	to be incorrectly allocated as locals.

	* jit/jit-reg-alloc.c (_jit_regs_load_to_top_two): handle the
	case where the second value is on the stack but not the first.

	* dpas/dpas-parser.y, dpas/dpas-types.c, dpas/dpas-types.h:
	report errors for unimplemented expressions and statements,
	so that users are not "surprised" when things silently fail.

	* .cvsignore, auto_gen.sh, configure.in, doc/.cvsignore,
	dpas/.cvsignore, dpas/Makefile.am, include/.cvsignore,
	jit/.cvsignore, jit/Makefile.am, jitdynamic/.cvsignore,
	jitdynamic/Makefile.am, jitplus/.cvsignore, jitplus/Makefile.am,
	tools/.cvsignore, tutorial/.cvsignore, tutorial/Makefile.am:
	modify the autoconf/automake build system to use libtool.

2004-05-10  Rhys Weatherley  <rweather@southern-storm.com.au>

	* jit/jit-reg-alloc.c, jit/jit-reg-alloc.h, jit/jit-rules-interp.c:
	interpreter code conversion for relative pointer and copy opcodes;
	fix some bugs in stack-based register allocation.

	* dpas/dpas-parser.y, dpas/dpas-types.c, dpas/dpas-types.h:
	loading and storing record fields in Dynamic Pascal.

	* dpas/dpas-builtin.c: implement the "New" and "Dispose" builtins.

2004-05-08  Rhys Weatherley  <rweather@southern-storm.com.au>

	* jit/jit-cache.c, jit/jit-cache.h, jit/jit-dump.c, jit/jit-interp.h,
	jit/jit-rules-interp.c: add "_jit_cache_get_end_method", to allow
	the end of a method's code to be located without explicit marking.

	* configure.in, include/jit/jit-util.h, jit/jit-string.c:
	remove the locale-sensitive string comparison routines because
	they aren't used in libjit, and front ends will normally have
	their own functions for this purpose.

	* Makefile.am, configure.in, doc/Makefile.am, doc/libjit.texi,
	include/jit/Makefile.am, include/jit/jit-dynamic.h,
	include/jit/jit-util.h, jit/Makefile.am, jit/jit-dynlib.c,
	jit/jit-mangle.c, jitdynamic/.cvsignore, jitdynamic/Makefile.am,
	jitdynamic/jit-cpp-mangle.c, jitdynamic/jit-dynlib.c:
	move the dynlib and C++ name mangling routines into a separate
	"jitdynamic" library, which will handle all of the cross-language
	naming and dynamic invocation logic.

	* include/jit/jit-type.h, jit/jit-internal.h, jit/jit-type.c,
	jitdynamic/jit-cpp-mangle.c: move the "JIT_TYPE_xxx" constants
	into the public headers and add "jit_type_get_kind" so that
	front end code can classify types quickly.

	* jit/jit-dump.c: use "objdump" to dump compiled native code.

2004-05-07  Rhys Weatherley  <rweather@southern-storm.com.au>

	* dpas/dpas-function.c, dpas/dpas-internal.h, dpas/dpas-main.c,
	dpas/dpas-parser.y, jit/jit-interp.cpp, jit/jit-interp.h,
	jit/jit-opcode.c, jit/jit-rules-interp.c: execute the "main"
	method once a Dynamic Pascal program has been compiled;
	fix some calling convention problems with "call_external".

	* dpas/dpas-builtin.c, dpas/dpas-scanner.l: add the "Flush"
	and "Terminate" builtins; fix a small bug in string scanning.

	* include/jit/jit-elf.h, jit/Makefile.am, jit/jit-context.c,
	jit/jit-elf-read.c, jit/jit-internal.h, jit/jit-symbol.c:
	implement symbol relocations for the ELF binary reader.

	* dpas/dpas-parser.y: code generation for "for" loops.

2004-05-06  Rhys Weatherley  <rweather@southern-storm.com.au>

	* dpas/Makefile.am, dpas/dpas-builtin.c, dpas/dpas-function.c,
	dpas/dpas-internal.h, dpas/dpas-main.c, dpas/dpas-parser.y,
	dpas/dpas-scope.c, dpas/dpas-scope.h, dpas/dpas-semantics.h,
	dpas/dpas-types.c, dpas/dpas-types.h, include/jit/jit-block.h,
	include/jit/jit-insn.h, include/jit/jit-plus.h, jit/jit-block.c,
	jit/jit-dump.c, jit/jit-function.c, jit/jit-insn.c, jit/jit-interp.cpp,
	jit/jit-opcode.c, jit/jit-rules-arm.c, jit/jit-rules-interp.c,
	jit/jit-rules-x86.c, jit/jit-type.c, jit/jit-value.c,
	jitplus/jit-plus-function.cpp: get basic compilation working
	in Dynamic Pascal.

2004-05-03  Rhys Weatherley  <rweather@southern-storm.com.au>

	* tools/gen-apply.c: improve the maintainability of the apply macros.

	* include/jit/jit-block.h, include/jit/jit-context.h,
	include/jit/jit-dump.h, include/jit/jit-elf.h, include/jit/jit-init.h,
	include/jit/jit-meta.h, include/jit/jit-type.h, include/jit/jit-util.h,
	jit/jit-type.c, jit/jit-value.c: add more instances of JIT_NOTHROW
	to the headers; add some special meta tags for types.

	* include/jit/jit-type.h, jit/jit-type.c: tag the system-dependent
	types so that they can be distinguished from the fixed-sized types
	when it is necessary to do so.

	* jit/Makefile.am, jit/jit-mangle.c: add the beginnings of a C++
	name mangler, to help with extracting C++ symbols from dynamic
	shared libraries.

	* doc/Makefile.am, doc/libjit.texi, doc/mangling_rules.txt,
	include/jit/jit-type.h, include/jit/jit-util.h, jit/jit-mangle.c,
	jit/jit-type.c: continue the implementation of the C++ name
	mangling routines.

2004-05-01  Rhys Weatherley  <rweather@southern-storm.com.au>

	* jit/jit-apply-x86.c, jit/jit-rules-x86.c, tools/gen-apply.c:

libjit/ChangeLog  view on Meta::CPAN

	* jit/jit-reg-alloc.c, jit/jit-reg-alloc.h: add functions to
	assist with register allocation on stack-based architectures.

	* jit/jit-rules-interp.c: implement "_jit_gen_load_value" for
	the interpreter backend.

	* jit/jit-interp.cpp, jit/jit-interp.h: fix some opcode names that
	should be prefixed with "JIT_OP".

	* jit/jit-function.c, jit/jit-internal.h, jit/jit-reg-alloc.c,
	jit/jit-reg-alloc.h, jit/jit-rules-arm.c, jit/jit-rules-interp.c,
	jit/jit-rules-interp.h, jit/jit-rules-x86.c, jit/jit-rules.h:
	interpreter back end code generation for binary, unary, and
	branch opcodes.

	* doc/libjit.texi, jit/jit-rules-interp.c: fix the Texinfo section
	markers in the "Porting" chapter.

	* jit/jit-rules-interp.c: code generation for interpreter return's.

	* include/jit/jit-except.h, include/jit/jit-function.h,
	include/jit/jit-plus.h, jit/jit-except.cpp, jit/jit-function.c,
	jit/jit-interp.cpp, jit/jit-interp.h, jit/jit-rules-interp.c,
	jitplus/jit-plus-function.cpp: implement "jit_function_apply"
	and "jit_function_apply_vararg" for the interpreter back end.

	* jitplus/jit-plus-function.cpp: initialization errors in
	the C++ binding.

	* jit/jit-function.c, jit/jit-insn.c, jit/jit-interp.cpp,
	jit/jit-rules-interp.c: work on code generation for function calls.

	* doc/libjit.texi, include/jit/jit-insn.h, include/jit/jit-plus.h,
	jit/jit-insn.c, jitplus/jit-plus-function.cpp, tutorial/t2.c:
	add a "flags" parmeter to "jit_insn_call" and friends, so that
	"nothrow", "noreturn", and "tail" options can be supplied.

	* jit/jit-dump.c, jit/jit-interp.cpp, jit/jit-interp.h,
	jit/jit-opcode.c, jit/jit-rules-interp.c: dump the translated
	native code from "jit_dump_function" are compilation.

	* jit/jit-interp.cpp, jit/jit-rules-interp.c: argument variable
	offsets should in item units, not byte units.

	* jit/jit-insn.c, jit/jit-reg-alloc.c, jit/jit-reg-alloc.h,
	jit/jit-rules-interp.c: improve register allocation in stacks.

2004-04-25  Rhys Weatherley  <rweather@southern-storm.com.au>

	* jit/jit-apply-func.h, jit/jit-apply-x86.c, jit/jit-apply-x86.h,
	jit/jit-cache.c: use CPU-specifc padding for aligning code
	areas with NOP's, for greater runtime efficiency.

	* include/jit/jit-elf.h, jit/Makefile.am, jit/jit-elf-write.c:
	add the skeleton of the ELF writing routines.

	* jit/jit-interp.cpp: modify VM_BR_TARGET so that it is PIC-friendly.

2004-04-24  Rhys Weatherley  <rweather@southern-storm.com.au>

	* */*: Initial public release.  Most of the skeleton code is in place.



( run in 0.609 second using v1.01-cache-2.11-cpan-5623c5533a1 )