2004-07-31 Zoltan Varga <vargaz@freemail.hu>
+ * inssel.brg: Optimize memset on 64 bit machines.
+
* mini-amd64.c: Fix some vararg cases.
2004-07-30 Neale Ferguson <Neale.Ferguson@SoftwareAG-usa.com>
{
int val_reg = mono_regstate_next_int (s->rs);
- MONO_EMIT_NEW_ICONST (s, val_reg, val);
+ if (sizeof (gpointer) == 8)
+ MONO_EMIT_NEW_I8CONST (s, val_reg, val);
+ else
+ MONO_EMIT_NEW_ICONST (s, val_reg, val);
+
+ if (sizeof (gpointer) == 8) {
+ while (size >= 8) {
+ MONO_EMIT_NEW_STORE_MEMBASE (s, OP_STOREI8_MEMBASE_REG, destreg, offset, val_reg);
+ offset += 8;
+ size -= 8;
+ }
+ }
while (size >= 4) {
MONO_EMIT_NEW_STORE_MEMBASE (s, OP_STOREI4_MEMBASE_REG, destreg, offset, val_reg);