develooper Front page | perl.perl6.internals | Postings from July 2002

Re: cvs commit: parrot/languages/imcc imcc.l imcc.y

Melvin Smith
July 24, 2002 22:41
Re: cvs commit: parrot/languages/imcc imcc.l imcc.y
Message ID:
At 02:19 PM 7/24/2002 +0000, wrote:
>cvsuser     02/07/24 07:19:27
>   Modified:    languages/imcc imcc.l imcc.y
>   Log:
>   Set IF_r0_read for "set Px, Ay".

On IMCC's aggressive behaviour :)

I finally sat down and looked at this. This fix will only make the symptom
go away for that particular instruction.

The real problem is this:

My original code computed everything in one big block of instructions.
I had a kludge in there that would check for the last branch in the routine
and extend variable lifetime at least to that point. This kept registers
from being clobbered in loops, etc.

Angel's improvements break the code down into REAL basic blocks
on branch boundaries, and so this kludge no longer works. There is
an apparent bug in the lifetime analysis that we need to fix.

In the meantime I'll leave this little patch in until we have a better 

-Melvin Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About