Request for reviews (M): 6667595: Set probability FAIR for pre-, post- loops and ALWAYS for main loop
Vladimir Kozlov
Vladimir.Kozlov at Sun.COM
Wed Oct 1 10:24:12 PDT 2008
http://webrev.invokedynamic.info/kvn/6667595/index.html
Fixed 6667595: Set probability FAIR for pre-, post- loops and ALWAYS for main loop
Problem:
C2 clone original loop's probability when it constructs pre-, main, post- loops.
Then C2 adds zero-trip guard for main loop with probability FAIR.
As result a main loop's probability could be half of a pre-loop's probability
and RA may generates stack spills in the main loop and not in the pre-loop.
Solution:
- Fix loop's probability.
- Prevent some ideal optimizations for loop's trip counter to avoid
having two live values which could cause spilling.
- Add several ideal optimizations to improve code from a loop cloning.
- Improve a spill copy removal in post allocation.
Reviewed by:
Fix verified (y/n): y, generated code.
Other testing:
JPRT, refworkload, specjbb2005, specjvm2008
More information about the hotspot-compiler-dev
mailing list