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 )