Re: IMCC temp optimizations...

2004-04-22 Thread Leopold Toetsch
Dan Sugalski <[EMAIL PROTECTED]> wrote: > I was using .locals for the actual variables in the source program, Well, you know it: .locals aren't vars. > and $Px for all the temps the compiler generated. I've been migrating > a lot of the code to use a few .local-defined hashes and indexing > into

Re: IMCC temp optimizations...

2004-04-22 Thread Dan Sugalski
At 6:04 PM +0200 4/22/04, Leopold Toetsch wrote: Dan Sugalski <[EMAIL PROTECTED]> wrote: registers needed:I43, N0, S12, P3327 registers in .pasm: I25, N0, S20, P32 - 464 spilled 2007 basic_blocks, 2079 edges Ouch. Register allocation is spending huge times

Re: IMCC temp optimizations...

2004-04-22 Thread Leopold Toetsch
Dan Sugalski <[EMAIL PROTECTED]> wrote: > registers needed:I43, N0, S12, P3327 > registers in .pasm: I25, N0, S20, P32 - 464 spilled > 2007 basic_blocks, 2079 edges Ouch. Register allocation is spending huge times during spilling. Something is definetely wro

Re: IMCC temp optimizations...

2004-04-22 Thread Dan Sugalski
At 4:03 PM +0200 4/22/04, Leopold Toetsch wrote: Dan Sugalski <[EMAIL PROTECTED]> wrote: Dunno what parrot thinks--it's not done yet. grep says 569 .locals and 473 temp PMC registers. I've now enabled some more code that speeds up temp allocation more (~2.5 for 2000 temps in a unit). This needs

Re: IMCC temp optimizations...

2004-04-22 Thread Angel Faus
A good register allocation algorithm will always have problems with big subs, there is nothing that we can do about it. I think that what "real compilers" do to solve this problem is implement two different algorithms: one for normal subs which tries to generate optimal code, and a naive one f

Re: IMCC temp optimizations...

2004-04-22 Thread Leopold Toetsch
Dan Sugalski <[EMAIL PROTECTED]> wrote: > Dunno what parrot thinks--it's not done yet. grep says 569 .locals > and 473 temp PMC registers. I've now enabled some more code that speeds up temp allocation more (~2.5 for 2000 temps in a unit). This needs that the usage range is limited to 10 lines. I

Re: IMCC temp optimizations...

2004-04-22 Thread Leopold Toetsch
Dan Sugalski wrote: As I sit here and wait for parrot to churn on the output from compiling a relatively small program I've put in another factor ~2.5 change for a unit with 2000 temps. leo

Re: IMCC temp optimizations...

2004-04-22 Thread Dan Sugalski
At 7:55 AM +0200 4/22/04, Leopold Toetsch wrote: Dan Sugalski <[EMAIL PROTECTED]> wrote: I think it may be a handy thing if someone'd go through and draw up a set of rules for the use of temps, and things that'll cause the register coloring algorithm to go mad. (I'd like to avoid 30 minute com

Re: IMCC temp optimizations...

2004-04-22 Thread Dan Sugalski
At 1:22 PM +0200 4/22/04, Leopold Toetsch wrote: Dan Sugalski wrote: ... (I'd like to avoid 30 minute compile sessions--it's a tad tedious :) Should be faster now by some factor. Cool, thanks. I've an optimized build of parrot going now, and I'll see what things look like when it's dine. How many

Re: IMCC temp optimizations...

2004-04-22 Thread Leopold Toetsch
Dan Sugalski wrote: ... (I'd like to avoid 30 minute compile sessions--it's a tad tedious :) Should be faster now by some factor. How many symbols are in the biggest compilation unit (parrot -v "registers in .imc")? leo

Re: IMCC temp optimizations...

2004-04-21 Thread Leopold Toetsch
Dan Sugalski <[EMAIL PROTECTED]> wrote: > I think it may be a handy thing if someone'd go through and draw up a > set of rules for the use of temps, and things that'll cause the > register coloring algorithm to go mad. (I'd like to avoid 30 minute > compile sessions--it's a tad tedious :) Are you