On 02/13/04 Ferguson, Neale wrote: > For the S/390 jit, I want to implement instructions like OP_LMUL & OP_LSHL > directly rather than by emulation. The steps, I believe, include: > > 1. Define MONO_ARCH_EMULATE_LMUL for the non-s390 platforms and place it in > the mini-xxx.h file > 2. Surround the jit-icalls emulation routines with #ifdef > MONO_ARCH_EMULATE_LMUL > 3. Surround the registering of the routine in mini.c with the same thing > 4. Update inssel*. Now inssel.brg has a g_assert() for these routines, do I > leave this and add an entry in inssel-s390.brg which will "override" it or > what?
You can add an entry in the inssel-s390.brg file and set it's cost to "0" so it will be used instead of the generic one in inssel.brg. Note: those opcodes are emulated by default because the common reg-allocation code doesn't deal with instructions with 3 input regs and two output regs. Totte has patches to deal with that for x86, I think. But I'd suggest to leave that optimization until after the jit is fully working. lupus -- ----------------------------------------------------------------- [EMAIL PROTECTED] debian/rules [EMAIL PROTECTED] Monkeys do it better _______________________________________________ Mono-list maillist - [EMAIL PROTECTED] http://lists.ximian.com/mailman/listinfo/mono-list
