Alien-LibJIT

 view release on metacpan or  search on metacpan

libjit/ChangeLog  view on Meta::CPAN

	cases when the destination register is independent of any input
	register.
	* tools/gen-rules-parser.y: allow specification	of independent
	destination register with '=reg' pattern syntax. (But the allocator
	does not yet handle this.)

2006-05-20  Aleksey Demakov  <ademakov@gmail.com>

	* jit/jit-rules-x86.c (_jit_gen_exch_top): fix computation of stack
	register index.

	* jit/jit-reg-alloc.c (_jit_regs_assign): micro optimization by
	changing nesting order of for and if statements.

2006-05-19  Aleksey Demakov  <ademakov@gmail.com>

	* jit-reg-alloc.h, jit/jit-reg-alloc.c: determine if input values
	need to be saved and evicted from registers to stack frame at the
	_jit_regs_assign() time. Uniformly save input values that need to
	in _jit_regs_gen(), do not save them in _jit_regs_commit(). This
	simplifies handling of stack registers. Remove initial_stack_top,
	exchanges, num_exchages fields from the _jit_regs_t struct. Add
	save and kill bit fields to the _jit_regdesc_t struct. Refactor
	and clean up code.

2006-05-10  Aleksey Demakov  <ademakov@gmail.com>

	* jit/jit-reg-alloc.c (use_cheapest_register): check if the other
	part of a register pair clobbers global registers.

	* jit/jit-reg-alloc.c (exch_stack_top): run value exchange loop
	for all values in both registers.

	* jit/jit-reg-alloc.h, jit/jit-reg-alloc.c: delete on_stack field
	from the _jit_regdesc_t struct.

	* jit/jit-reg-alloc.c (_jit_regs_gen): handle instructions that have
	both stack and flat registers.

	* jit/jit-reg-alloc.c (spill_value): spilling an input value remember
	if we do register exchanges for other values.

	* jit/jit-reg-alloc.c: set touched registers more accurately.

2006-05-08  Aleksey Demakov  <ademakov@gmail.com>

	* jit/jit-reg-alloc.c (commit_input_value, commit_output_value):
	fix extra spills introduced at 2006-05-05.

	* jit/jit-rules-x86.c (_jit_gen_spill_top): add missing
	jit_cache_end_output().

2006-05-05  Aleksey Demakov  <ademakov@gmail.com>

	* jit/jit-reg-alloc.h, jit/jit-reg-alloc.c: fix spilling and many
	problems with stack registers.

2006-05-04  Radek Polak  <psonek2@seznam.cz>

	* jit/jit-dump.c (dump_object_code): Now can dump to any stream
	not just stdout and stderr.

2006-05-01  Aleksey Demakov  <ademakov@gmail.com>

	* jit/jit-rules-x86.sel, jit/jit-rules-x86.ins: fix problem with
	spilling dest register in JIT_OP_ADDRESS_OF rule.

	* jit/jit-rules-x86.ins: rewrite JIT_OP_STORE_RELATIVE_INT rule.

2006-04-23  Aleksey Demakov  <ademakov@gmail.com>

	* jit/jit-reg-alloc.h, jit/jit-reg-alloc.c: register allocator now
	supports register sets that constrain the register assignment.

	* tools/gen-rules-parser.y: extend grammar to support register sets.
	Fix bugs.

	* jit/jit-rules-x86.ins: take advantage of new register allocator
	for JIT_OP_MEMORY, JIT_OP_MEMOVE, JIT_OP_MEMESET rules.

2006-04-20  Aleksey Demakov  <ademakov@gmail.com>

	* tools/gen-rules-parser.y: fix generation of `if' pattern code.

2006-04-19  Aleksey Demakov  <ademakov@gmail.com>

	* jit/jit-rules-x86.c (_jit_gen_load_value): fix compiler warning.

	* tools/gen-rules-parser.y (gensel_output_clauses): fix generation
	of clobber and scratch code.

	* tools/gen-rules-scanner.l, tools/gen-rules-parser.y: add `any'
	keyword.

2006-04-18  Aleksey Demakov  <ademakov@gmail.com>

	* jit/jit-rules-x86.ins: add instruction selection rules for new
	register allocator.
	* jit/Makefile.am: build new instruction selection rules.
	* configure.in: add --enable-new-reg-alloc option.

2006-04-14  Aleksey Demakov  <ademakov@gmail.com>

	* jit/jit-reg-alloc.h, jit/jit-reg-alloc.c: new register allocator
	improved and extended to support stack registers.

	* jit/jit-internal.h (struct _jit_builder): 
	* jit/jit-function.c (compile_block, jit_function_compile): add
	some tracing.

	* jit/jit-rules.h:
	* jit/jit-rules-arm.c:
	* jit/jit-rules-interp.c: 
	* jit/jit-rules-x86.c: add _jit_gen_exch_top and _jit_gen_spill_top
	functions used by new allocator to handle stack registers. Add reg
	argument to _jit_gen_spill_global and_jit_gen_load_global
	functions.

2006-04-11  Aleksey Demakov  <ademakov@gmail.com>

	* jit/jit-insn.c (jit_insn_start_catcher): initialize



( run in 0.370 second using v1.01-cache-2.11-cpan-f5b5a18a01a )