[Mono-devel-list] call->dreg register assignment in mini

Paolo Molaro lupus at ximian.com
Tue Aug 5 06:26:19 EDT 2003


On 07/29/03 Laurent Morichetti wrote:
> I can't find where the machine register assignment for the retval of a call is done. By looking at the local alloc verbose output, it seems that call->dreg is virtual (never assigned a machine register) and that it gets %eax because it happens to be the first free register. Am I missing something?

The destination register is marked with 'a' in the cpu description: this
is considered by the register allocator to be the EAX register.
The 'a' marker was only on the regular calls, though: I fixed it to
include call reg and call base+offset.

> Also, in cprop.c line 115, is this a typo? (shouldn't it be == 'c')
> >  if (spec [MONO_INST_CLOB] != 'c') {

Yes, thanks.

lupus

-- 
-----------------------------------------------------------------
lupus at debian.org                                     debian/rules
lupus at ximian.com                             Monkeys do it better



More information about the Mono-devel-list mailing list