* jit/jit-gen-arm.c: optimize the use of rotated immediate values.
+ * jit/jit-rules-arm.c (_jit_gen_load_value): use ARM register pairs
+ properly for "long" and "float64" values.
+
2004-06-08 Rhys Weatherley <rweather@southern-storm.com.au>
* jit/Makefile.am, jit/jit-cpuid-x86.c, jit/jit-cpuid-x86.h:
long_value = jit_value_get_long_constant(value);
inst = mov_reg_imm(gen, inst, _jit_reg_info[reg].cpu_reg,
(jit_int)long_value);
- inst = mov_reg_imm(gen, inst, _jit_reg_info[other_reg].cpu_reg,
+ inst = mov_reg_imm(gen, inst, _jit_reg_info[reg].cpu_reg + 1,
(jit_int)(long_value >> 32));
}
break;
(gen, inst, _jit_reg_info[reg].cpu_reg,
((int *)&float64_value)[0]);
inst = mov_reg_imm
- (gen, inst, _jit_reg_info[other_reg].cpu_reg,
+ (gen, inst, _jit_reg_info[reg].cpu_reg + 1,
((int *)&float64_value)[1]);
}
else
{
arm_load_membase(inst, _jit_reg_info[reg].cpu_reg,
ARM_FP, offset);
- arm_load_membase(inst, _jit_reg_info[other_reg].cpu_reg,
+ arm_load_membase(inst, _jit_reg_info[reg].cpu_reg + 1,
ARM_FP, offset + 4);
}
break;
{
arm_load_membase(inst, _jit_reg_info[reg].cpu_reg,
ARM_FP, offset);
- arm_load_membase(inst, _jit_reg_info[other_reg].cpu_reg,
+ arm_load_membase(inst, _jit_reg_info[reg].cpu_reg + 1,
ARM_FP, offset + 4);
}
else