Changes between Version 28 and Version 29 of PIRCDevelopment

Show
Ignore:
Timestamp:
08/09/09 12:25:11 (12 years ago)
Author:
kjs
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • PIRCDevelopment

    v28 v29  
    372372The register optimizer is a variant of the Linear Scan Register allocation algorithm as described in [http://www.google.ie/url?sa=t&source=web&ct=res&cd=1&url=http%3A%2F%2Fwww.cs.ucla.edu%2F~palsberg%2Fcourse%2Fcs132%2Flinearscan.pdf&ei=w9F5SvzVDpOqsAa_7tyeBQ&usg=AFQjCNETIxGGy87F9GzLawd4euXEaldcnQ&sig2=Hd7nnjdQrgnOqix-8sx92g this paper]. Since that algorithm assumes there's a fixed number of registers (which is the case for hardware processors), the algorithm is changed in a few places.  
    373373 
    374 The implementation can be found in [source:/trunk/compilers/pirc/src/pirregalloc.c].  
     374The implementation can be found in [source:/trunk/compilers/pirc/src/pirregalloc.c]. Whether or not to use the register optimizer depends on how your program is used. If you have a large program that you will run many times, and memory usage is important, then you should activate it. If, on the other hand, runtime performance (compilation time included) is important, you should not activate it, as it takes additional time to perform the register optimization. In order to activate the register optimizer, use the {{{-r}}} command line option when running PIRC. 
    375375 
    376376