Browse Source

remove incorrect optimization in jit_insn_store()

cache-refactoring
Aleksey Demakov 18 years ago
parent
commit
6c32c32ca9
  1. 6
      ChangeLog
  2. 9
      jit/jit-insn.c

6
ChangeLog

@ -1,3 +1,9 @@
2007-05-26 Aleksey Demakov <ademakov@gmail.com>
* jit/jit-insn.c (jit_insn_store): remove incorrect optimization
that eliminates intermediate value without knowledge of its later
use.
2007-04-04 Aleksey Demakov <ademakov@gmail.com>
* jit/jit-reg-alloc.c (commit_output_value): fix compilation for

9
jit/jit-insn.c

@ -1442,15 +1442,6 @@ int jit_insn_store(jit_function_t func, jit_value_t dest, jit_value_t value)
{
return 0;
}
insn = _jit_block_get_last(func->builder->current_block);
if(value->is_temporary && insn && insn->dest == value &&
insn->value1 == dest)
{
/* Special case: we can move the destination value back into
the previous instruction, to avoid a redundant copy */
insn->dest = dest;
return 1;
}
insn = _jit_block_add_insn(func->builder->current_block);
if(!insn)
{

Loading…
Cancel
Save