Rhys Weatherley
|
d4b80e6088
|
Add floating-point instruction macros.
|
21 years ago |
Rhys Weatherley
|
8e7173ae96
|
Use "sigsetjmp" instead of "setjmp", because "setjmp" may
|
21 years ago |
Rhys Weatherley
|
cfcec19dbf
|
Fix a warning.
|
21 years ago |
Rhys Weatherley
|
6de765a7d4
|
Work around a SIGFPE for sqrt(-1) on Alpha; it should return NaN instead.
|
21 years ago |
Rhys Weatherley
|
250affbed3
|
Alignment problem with "push_const_float32" on 64-bit platforms.
|
21 years ago |
Rhys Weatherley
|
705f7e828b
|
Gen-apply fixes for Alpha platforms.
|
21 years ago |
Rhys Weatherley
|
ad085d320b
|
jit_flush_exec: flush cache lines properly if the start is not
|
21 years ago |
Rhys Weatherley
|
afa225d0d3
|
Add some more instructions to the ARM back end; split some x86
|
21 years ago |
Rhys Weatherley
|
8113b81593
|
Recognise "t = a op b; a = t" and turn it into "a = a op b" to make
|
21 years ago |
Rhys Weatherley
|
8bc5c7af87
|
_jit_regs_load_value: if a value is in a global register and it is
|
21 years ago |
Rhys Weatherley
|
f24dd004ca
|
Implement a simple global register allocation policy, based on usage counts.
|
21 years ago |
Rhys Weatherley
|
3980ad081d
|
Enable the x86 back end by default on platforms where it makes sense,
|
21 years ago |
Rhys Weatherley
|
f9aae1aee6
|
More instruction selection rules for ARM.
|
21 years ago |
Rhys Weatherley
|
8a1d2eb4cb
|
Fix some gcc 3.x compile warnings.
|
21 years ago |
Rhys Weatherley
|
f8026b17d6
|
Throw exceptions correctly for "check_null".
|
21 years ago |
Rhys Weatherley
|
a064ef7549
|
Inline and optimize divisions for x86.
|
21 years ago |
Rhys Weatherley
|
5ce14f9440
|
Optimize multiplications for x86.
|
21 years ago |
Rhys Weatherley
|
6539bc34fb
|
Fix a cpu vs non-cpu register problem in the floating-point
|
21 years ago |
Rhys Weatherley
|
48fa89fa96
|
Add "jit_insn_defer_pop_stack" and "jit_insn_flush_defer_pop",
|
21 years ago |
Rhys Weatherley
|
67f91eeaa4
|
Improve instruction selection for floating-point "push" operations.
|
21 years ago |
Rhys Weatherley
|
c9b8a71a35
|
Another small change.
|
21 years ago |
Rhys Weatherley
|
159c54b124
|
Small update to LLVM URL.
|
21 years ago |
Rhys Weatherley
|
157747e266
|
jit_insn_convert: use intrinsic functions for conversions when the
|
21 years ago |
Rhys Weatherley
|
c09b22830d
|
Clarify the text that describes LLVM, at the request of Chris Lattner,
|
21 years ago |
Rhys Weatherley
|
da4ccf4910
|
Stub out JIT_OP_RETURN_REG, which doesn't need any special handling for x86.
|
21 years ago |
Rhys Weatherley
|
af3f8fd9e4
|
Continue the x86 back end; particularly byte/short stores.
|
21 years ago |
Rhys Weatherley
|
d7687d0107
|
Relative loads and stores for x86.
|
21 years ago |
Rhys Weatherley
|
abd70a9fc0
|
dpas_type_identical: treat "float64" and "nfloat" as identical on
|
21 years ago |
Rhys Weatherley
|
be3ff8d4e2
|
Split "detect_struct_conventions" up a bit more to (hopefully) prevent
|
21 years ago |
Rhys Weatherley
|
cf40d2ffe9
|
Add the beginnings of the instruction selector for ARM.
|
21 years ago |
Rhys Weatherley
|
164eeca3c9
|
More selection cases for the x86 back end.
|
21 years ago |
Rhys Weatherley
|
4e2a72cc6b
|
Add "jit_block_current_is_dead" to simplify testing if the last block
|
21 years ago |
Rhys Weatherley
|
2ee5d29874
|
Add "jit_insn_new_block" to simplify creating a new block that
|
21 years ago |
Rhys Weatherley
|
23e7561ff6
|
More bug fixes for the x86 back end.
|
21 years ago |
Rhys Weatherley
|
ac76b19a10
|
Fix some compile issues in the x86 native back end.
|
21 years ago |
Rhys Weatherley
|
fcf10faf7d
|
Selectors for call instructions.
|
21 years ago |
Rhys Weatherley
|
d0673c90a3
|
Selectors for branch instructions.
|
21 years ago |
Rhys Weatherley
|
2ce17e6fb3
|
Check in the initial instruction selector for x86 (incomplete).
|
21 years ago |
Rhys Weatherley
|
b36c65ce5c
|
Add the "gen-sel" program to the tree, to assist with building
|
21 years ago |
Rhys Weatherley
|
8f3bc2a111
|
Add missing functions to the C++ API.
|
21 years ago |
Rhys Weatherley
|
be08d549bf
|
_jit_gen_start_block: set the address of the exception handler for
|
21 years ago |
Rhys Weatherley
|
04320d4509
|
Rewrite the exception region routines to make them easier
|
21 years ago |
Rhys Weatherley
|
a37f62c265
|
Modify the function call logic to use "setjmp" with native back ends.
|
21 years ago |
Rhys Weatherley
|
a0eb7f5722
|
Rename "jit_insn_move_blocks" to "jit_insn_move_blocks_to_end" and
|
21 years ago |
Rhys Weatherley
|
e1bd1891df
|
_jit_block_peephole_branch: don't allow conditional branches to cross
|
21 years ago |
Rhys Weatherley
|
9c3afc7153
|
Use computed goto's in the interpreter if supported by the underlying compiler.
|
21 years ago |
Rhys Weatherley
|
a300002e3c
|
Add the "jit_insn_alloca" instruction.
|
21 years ago |
Rhys Weatherley
|
fa4a4c1fdf
|
Remove the last remaining C++ code from libjit.so so that
|
21 years ago |
Rhys Weatherley
|
d1401a8587
|
Redesign the exception handling mechanism to use "setjmp" rather
|
21 years ago |
Rhys Weatherley
|
7e63033f64
|
Treat dead blocks as empty when peepholing branches to the next block.
|
21 years ago |