minimize the probability that the pool will be flushed in the
middle of a loop body.
tools/gen-sel-parser.y: redesign the ARM code generation macros
so that they have stronger protection against buffer overruns.
+ * jit/jit-rules-arm.sel: flush the constant pool after unconditional
+ branches, to try to minimize the probability that the pool will
+ be flushed in the middle of a loop body.
+
2004-06-08 Rhys Weatherley <rweather@southern-storm.com.au>
* jit/Makefile.am, jit/jit-cpuid-x86.c, jit/jit-cpuid-x86.h:
[] -> {
/* ARM_CC_AL == "always branch" */
output_branch(func, &inst, ARM_CC_AL, insn);
+
+ /* Flush the constant pool now, to minimize the probability that
+ it is accidentally flushed in the middle of a loop body */
+ jit_gen_save_inst_ptr(gen, inst);
+ flush_constants(gen, 1);
+ jit_gen_load_inst_ptr(gen, inst);
}
JIT_OP_BR_IFALSE: unary_branch