]> git.unchartedbackwaters.co.uk Git - francis/libjit.git/log
francis/libjit.git
21 years agoConvert constant conditional branches such as "if true goto L" into
Rhys Weatherley [Thu, 20 May 2004 01:24:54 +0000 (01:24 +0000)]
Convert constant conditional branches such as "if true goto L" into
unconditional branches.

21 years agoFix a compile bug.
Rhys Weatherley [Sat, 15 May 2004 10:33:02 +0000 (10:33 +0000)]
Fix a compile bug.

21 years agoFix a macro generation bug for Win32 systems.
Rhys Weatherley [Sat, 15 May 2004 10:21:34 +0000 (10:21 +0000)]
Fix a macro generation bug for Win32 systems.

21 years agoPut some infrastructure in place to support pluggable object models.
Rhys Weatherley [Fri, 14 May 2004 07:10:59 +0000 (07:10 +0000)]
Put some infrastructure in place to support pluggable object models.

21 years agoUpdating working version to "0.0.3".
Rhys Weatherley [Thu, 13 May 2004 04:59:52 +0000 (04:59 +0000)]
Updating working version to "0.0.3".

21 years agoUpdate version for the "0.0.2" release. r.0.0.2
Rhys Weatherley [Thu, 13 May 2004 03:24:17 +0000 (03:24 +0000)]
Update version for the "0.0.2" release.

21 years agoPut some infrastructure (incomplete) in place to support
Rhys Weatherley [Thu, 13 May 2004 02:45:48 +0000 (02:45 +0000)]
Put some infrastructure (incomplete) in place to support
array index expressions.

21 years agoAdd a README file to describe how to write test cases.
Rhys Weatherley [Wed, 12 May 2004 11:38:31 +0000 (11:38 +0000)]
Add a README file to describe how to write test cases.

21 years agoAdd the "--dont-fold" option to Dynamic Pascal, so that we can run
Rhys Weatherley [Wed, 12 May 2004 07:33:45 +0000 (07:33 +0000)]
Add the "--dont-fold" option to Dynamic Pascal, so that we can run
the test cases without folding.

21 years agoTest cases and bug fixes for mathematical operations.
Rhys Weatherley [Wed, 12 May 2004 06:58:45 +0000 (06:58 +0000)]
Test cases and bug fixes for mathematical operations.

21 years agoAdd builtins for mathematical operations.
Rhys Weatherley [Wed, 12 May 2004 04:52:03 +0000 (04:52 +0000)]
Add builtins for mathematical operations.

21 years agoMore coercion test cases and fixes.
Rhys Weatherley [Wed, 12 May 2004 03:34:34 +0000 (03:34 +0000)]
More coercion test cases and fixes.

21 years agojit_type_promote_int: promote ubyte and ushort to uint, not int.
Rhys Weatherley [Wed, 12 May 2004 03:00:17 +0000 (03:00 +0000)]
jit_type_promote_int: promote ubyte and ushort to uint, not int.

21 years agoCheck in some initial infrastructure for the dpas-based test suite.
Rhys Weatherley [Wed, 12 May 2004 01:11:17 +0000 (01:11 +0000)]
Check in some initial infrastructure for the dpas-based test suite.

21 years agodpas_parse_hex: ignore the 'H' on the end of a hexadecimal constant.
Rhys Weatherley [Wed, 12 May 2004 00:54:30 +0000 (00:54 +0000)]
dpas_parse_hex: ignore the 'H' on the end of a hexadecimal constant.

21 years agoIncorrect values for jit_max_int and jit_max_long.
Rhys Weatherley [Wed, 12 May 2004 00:53:09 +0000 (00:53 +0000)]
Incorrect values for jit_max_int and jit_max_long.

21 years agoResolve ea-based lvalues in operators.
Rhys Weatherley [Wed, 12 May 2004 00:30:02 +0000 (00:30 +0000)]
Resolve ea-based lvalues in operators.

21 years agoIfTail: fix a bug that caused the "then" case of an "if" to fall
Rhys Weatherley [Wed, 12 May 2004 00:22:30 +0000 (00:22 +0000)]
IfTail: fix a bug that caused the "then" case of an "if" to fall
through to the "else".

21 years agoAdd the "SameType" and "SameShape" builtins, to assist with unit
Rhys Weatherley [Wed, 12 May 2004 00:05:41 +0000 (00:05 +0000)]
Add the "SameType" and "SameShape" builtins, to assist with unit
testing type coercions.

21 years agoUse both .libs and non.libs versions of the so paths, because some
Rhys Weatherley [Tue, 11 May 2004 22:25:22 +0000 (22:25 +0000)]
Use both .libs and non.libs versions of the so paths, because some
versions of libtool add .libs implicitly and others don't.

21 years agoModify the autoconf/automake build system to use libtool.
Rhys Weatherley [Tue, 11 May 2004 10:23:04 +0000 (10:23 +0000)]
Modify the autoconf/automake build system to use libtool.

21 years agoReport errors for unimplemented expressions and statements,
Rhys Weatherley [Tue, 11 May 2004 06:52:19 +0000 (06:52 +0000)]
Report errors for unimplemented expressions and statements,
so that users are not "surprised" when things silently fail.

21 years ago_jit_regs_load_to_top_two: handle the case where the second value
Rhys Weatherley [Tue, 11 May 2004 06:16:32 +0000 (06:16 +0000)]
_jit_regs_load_to_top_two: handle the case where the second value
is on the stack but not the first.

21 years agoFix a bug that caused global variables in Dynamic Pascal
Rhys Weatherley [Tue, 11 May 2004 06:13:17 +0000 (06:13 +0000)]
Fix a bug that caused global variables in Dynamic Pascal
to be incorrectly allocated as locals.

21 years agoImplement the exception-handling opcodes for the interpreter.
Rhys Weatherley [Tue, 11 May 2004 04:58:12 +0000 (04:58 +0000)]
Implement the exception-handling opcodes for the interpreter.

21 years agoRound out the function call handling opcodes for the interpreter.
Rhys Weatherley [Tue, 11 May 2004 02:04:17 +0000 (02:04 +0000)]
Round out the function call handling opcodes for the interpreter.

21 years agoImplement the "New" and "Dispose" builtins.
Rhys Weatherley [Mon, 10 May 2004 04:47:23 +0000 (04:47 +0000)]
Implement the "New" and "Dispose" builtins.

21 years agoLoading and storing record fields in Dynamic Pascal.
Rhys Weatherley [Mon, 10 May 2004 03:43:11 +0000 (03:43 +0000)]
Loading and storing record fields in Dynamic Pascal.

21 years agoInterpreter code conversion for relative pointer and copy opcodes;
Rhys Weatherley [Mon, 10 May 2004 03:41:49 +0000 (03:41 +0000)]
Interpreter code conversion for relative pointer and copy opcodes;
fix some bugs in stack-based register allocation.

21 years agoUse "objdump" to dump compiled native code.
Rhys Weatherley [Sat, 8 May 2004 10:11:47 +0000 (10:11 +0000)]
Use "objdump" to dump compiled native code.

21 years agoMove the "JIT_TYPE_xxx" constants into the public headers and
Rhys Weatherley [Sat, 8 May 2004 02:31:32 +0000 (02:31 +0000)]
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.

21 years agoMove the dynlib and C++ name mangling routines into a separate
Rhys Weatherley [Sat, 8 May 2004 01:36:41 +0000 (01:36 +0000)]
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.

21 years agoRemove the locale-sensitive string comparison routines because
Rhys Weatherley [Sat, 8 May 2004 01:10:22 +0000 (01:10 +0000)]
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.

21 years agoAdd "_jit_cache_get_end_method", to allow the end of a method's code
Rhys Weatherley [Sat, 8 May 2004 00:42:18 +0000 (00:42 +0000)]
Add "_jit_cache_get_end_method", to allow the end of a method's code
to be located without explicit marking.

21 years agoCode generation for "for" loops.
Rhys Weatherley [Fri, 7 May 2004 04:01:04 +0000 (04:01 +0000)]
Code generation for "for" loops.

21 years agoImplement symbol relocations for the ELF binary reader.
Rhys Weatherley [Fri, 7 May 2004 01:43:12 +0000 (01:43 +0000)]
Implement symbol relocations for the ELF binary reader.

21 years agoAdd the "Flush" and "Terminate" builtins; fix a small bug in string scanning.
Rhys Weatherley [Thu, 6 May 2004 23:10:46 +0000 (23:10 +0000)]
Add the "Flush" and "Terminate" builtins; fix a small bug in string scanning.

21 years agoExecute the "main" method once a Dynamic Pascal program has been compiled;
Rhys Weatherley [Thu, 6 May 2004 22:41:15 +0000 (22:41 +0000)]
Execute the "main" method once a Dynamic Pascal program has been compiled;
fix some calling convention problems with "call_external".

21 years agoGet basic compilation working in Dynamic Pascal.
Rhys Weatherley [Thu, 6 May 2004 11:09:37 +0000 (11:09 +0000)]
Get basic compilation working in Dynamic Pascal.

21 years agoContinue the implementation of the C++ name mangling routines.
Rhys Weatherley [Mon, 3 May 2004 11:12:37 +0000 (11:12 +0000)]
Continue the implementation of the C++ name mangling routines.

21 years agoAdd the beginnings of a C++ name mangler, to help with extracting
Rhys Weatherley [Mon, 3 May 2004 06:32:22 +0000 (06:32 +0000)]
Add the beginnings of a C++ name mangler, to help with extracting
C++ symbols from dynamic shared libraries.

21 years agoTag the system-dependent types so that they can be distinguished from
Rhys Weatherley [Mon, 3 May 2004 01:38:36 +0000 (01:38 +0000)]
Tag the system-dependent types so that they can be distinguished from
the fixed-sized types when it is necessary to do so.

21 years agoAdd more instances of JIT_NOTHROW to the headers; add some special
Rhys Weatherley [Sun, 2 May 2004 23:41:50 +0000 (23:41 +0000)]
Add more instances of JIT_NOTHROW to the headers; add some special
meta tags for types.

21 years agoImprove the maintainability of the apply macros.
Rhys Weatherley [Sun, 2 May 2004 23:40:18 +0000 (23:40 +0000)]
Improve the maintainability of the apply macros.

21 years agoClean up the builder/parser macros and detect padding of
Rhys Weatherley [Sat, 1 May 2004 11:16:15 +0000 (11:16 +0000)]
Clean up the builder/parser macros and detect padding of
the floating-point registers.

21 years agoAdd array access instructions.
Rhys Weatherley [Sat, 1 May 2004 07:25:52 +0000 (07:25 +0000)]
Add array access instructions.

21 years agoImplement x86 code generation for some of the basic operators.
Rhys Weatherley [Sat, 1 May 2004 07:24:27 +0000 (07:24 +0000)]
Implement x86 code generation for some of the basic operators.

21 years agoSet the initial working version to 0.0.1.
Rhys Weatherley [Fri, 30 Apr 2004 23:40:54 +0000 (23:40 +0000)]
Set the initial working version to 0.0.1.

21 years agoInitial revision
Rhys Weatherley [Fri, 30 Apr 2004 23:29:28 +0000 (23:29 +0000)]
Initial revision