mirror of
https://github.com/openjdk/jdk.git
synced 2026-01-28 12:09:14 +00:00
8354930: IGV: dump C2 graph before and after live range stretching
Reviewed-by: rcastanedalo, chagedorn
This commit is contained in:
parent
c96803dc8b
commit
24edd3b2c1
@ -406,6 +406,8 @@ void PhaseChaitin::Register_Allocate() {
|
||||
_live = &live; // Mark LIVE as being available
|
||||
}
|
||||
|
||||
C->print_method(PHASE_INITIAL_LIVENESS, 4);
|
||||
|
||||
// Base pointers are currently "used" by instructions which define new
|
||||
// derived pointers. This makes base pointers live up to the where the
|
||||
// derived pointer is made, but not beyond. Really, they need to be live
|
||||
@ -422,10 +424,9 @@ void PhaseChaitin::Register_Allocate() {
|
||||
gather_lrg_masks(false);
|
||||
live.compute(_lrg_map.max_lrg_id());
|
||||
_live = &live;
|
||||
C->print_method(PHASE_LIVE_RANGE_STRETCHING, 4);
|
||||
}
|
||||
|
||||
C->print_method(PHASE_INITIAL_LIVENESS, 4);
|
||||
|
||||
// Create the interference graph using virtual copies
|
||||
build_ifg_virtual(); // Include stack slots this time
|
||||
|
||||
|
||||
@ -100,6 +100,7 @@
|
||||
flags(MATCHING, "After matching") \
|
||||
flags(GLOBAL_CODE_MOTION, "Global code motion") \
|
||||
flags(INITIAL_LIVENESS, "Initial liveness") \
|
||||
flags(LIVE_RANGE_STRETCHING, "Live range stretching") \
|
||||
flags(AGGRESSIVE_COALESCING, "Aggressive coalescing") \
|
||||
flags(INITIAL_SPILLING, "Initial spilling") \
|
||||
flags(CONSERVATIVE_COALESCING, "Conservative coalescing") \
|
||||
|
||||
@ -108,6 +108,7 @@ public enum CompilePhase {
|
||||
MATCHING("After matching", RegexType.MACH),
|
||||
GLOBAL_CODE_MOTION("Global code motion", RegexType.MACH),
|
||||
INITIAL_LIVENESS("Initial liveness", RegexType.MACH),
|
||||
LIVE_RANGE_STRETCHING("Live range stretching", RegexType.MACH),
|
||||
AGGRESSIVE_COALESCING("Aggressive coalescing", RegexType.MACH),
|
||||
INITIAL_SPILLING("Initial spilling", RegexType.MACH),
|
||||
CONSERVATIVE_COALESCING("Conservative coalescing", RegexType.MACH, ActionOnRepeat.KEEP_FIRST),
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user