< prev index next >

src/hotspot/share/opto/phasetype.hpp

Print this page
rev 49218 : 8192992: Test8007294.java failed: attempted to spill a non-spillable item
Summary: Fix bugs in schedule_late that forces load to early
Reviewed-by:


  32   PHASE_AFTER_PARSING,
  33   PHASE_ITER_GVN1,
  34   PHASE_PHASEIDEAL_BEFORE_EA,
  35   PHASE_ITER_GVN_AFTER_EA,
  36   PHASE_ITER_GVN_AFTER_ELIMINATION,
  37   PHASE_PHASEIDEALLOOP1,
  38   PHASE_PHASEIDEALLOOP2,
  39   PHASE_PHASEIDEALLOOP3,
  40   PHASE_CPP1,
  41   PHASE_ITER_GVN2,
  42   PHASE_PHASEIDEALLOOP_ITERATIONS,
  43   PHASE_OPTIMIZE_FINISHED,
  44   PHASE_GLOBAL_CODE_MOTION,
  45   PHASE_FINAL_CODE,
  46   PHASE_AFTER_EA,
  47   PHASE_BEFORE_CLOOPS,
  48   PHASE_AFTER_CLOOPS,
  49   PHASE_BEFORE_BEAUTIFY_LOOPS,
  50   PHASE_AFTER_BEAUTIFY_LOOPS,
  51   PHASE_BEFORE_MATCHING,

  52   PHASE_INCREMENTAL_INLINE,
  53   PHASE_INCREMENTAL_BOXING_INLINE,
  54   PHASE_END,
  55   PHASE_FAILURE,
  56 
  57   PHASE_NUM_TYPES
  58 };
  59 
  60 class CompilerPhaseTypeHelper {
  61   public:
  62   static const char* to_string(CompilerPhaseType cpt) {
  63     switch (cpt) {
  64       case PHASE_BEFORE_STRINGOPTS:          return "Before StringOpts";
  65       case PHASE_AFTER_STRINGOPTS:           return "After StringOpts";
  66       case PHASE_BEFORE_REMOVEUSELESS:       return "Before RemoveUseless";
  67       case PHASE_AFTER_PARSING:              return "After Parsing";
  68       case PHASE_ITER_GVN1:                  return "Iter GVN 1";
  69       case PHASE_PHASEIDEAL_BEFORE_EA:       return "PhaseIdealLoop before EA";
  70       case PHASE_ITER_GVN_AFTER_EA:          return "Iter GVN after EA";
  71       case PHASE_ITER_GVN_AFTER_ELIMINATION: return "Iter GVN after eliminating allocations and locks";
  72       case PHASE_PHASEIDEALLOOP1:            return "PhaseIdealLoop 1";
  73       case PHASE_PHASEIDEALLOOP2:            return "PhaseIdealLoop 2";
  74       case PHASE_PHASEIDEALLOOP3:            return "PhaseIdealLoop 3";
  75       case PHASE_CPP1:                       return "PhaseCPP 1";
  76       case PHASE_ITER_GVN2:                  return "Iter GVN 2";
  77       case PHASE_PHASEIDEALLOOP_ITERATIONS:  return "PhaseIdealLoop iterations";
  78       case PHASE_OPTIMIZE_FINISHED:          return "Optimize finished";
  79       case PHASE_GLOBAL_CODE_MOTION:         return "Global code motion";
  80       case PHASE_FINAL_CODE:                 return "Final Code";
  81       case PHASE_AFTER_EA:                   return "After Escape Analysis";
  82       case PHASE_BEFORE_CLOOPS:              return "Before CountedLoop";
  83       case PHASE_AFTER_CLOOPS:               return "After CountedLoop";
  84       case PHASE_BEFORE_BEAUTIFY_LOOPS:      return "Before beautify loops";
  85       case PHASE_AFTER_BEAUTIFY_LOOPS:       return "After beautify loops";
  86       case PHASE_BEFORE_MATCHING:            return "Before Matching";

  87       case PHASE_INCREMENTAL_INLINE:         return "Incremental Inline";
  88       case PHASE_INCREMENTAL_BOXING_INLINE:  return "Incremental Boxing Inline";
  89       case PHASE_END:                        return "End";
  90       case PHASE_FAILURE:                    return "Failure";
  91       default:
  92         ShouldNotReachHere();
  93         return NULL;
  94     }
  95   }
  96 };
  97 
  98 #endif //SHARE_VM_OPTO_PHASETYPE_HPP


  32   PHASE_AFTER_PARSING,
  33   PHASE_ITER_GVN1,
  34   PHASE_PHASEIDEAL_BEFORE_EA,
  35   PHASE_ITER_GVN_AFTER_EA,
  36   PHASE_ITER_GVN_AFTER_ELIMINATION,
  37   PHASE_PHASEIDEALLOOP1,
  38   PHASE_PHASEIDEALLOOP2,
  39   PHASE_PHASEIDEALLOOP3,
  40   PHASE_CPP1,
  41   PHASE_ITER_GVN2,
  42   PHASE_PHASEIDEALLOOP_ITERATIONS,
  43   PHASE_OPTIMIZE_FINISHED,
  44   PHASE_GLOBAL_CODE_MOTION,
  45   PHASE_FINAL_CODE,
  46   PHASE_AFTER_EA,
  47   PHASE_BEFORE_CLOOPS,
  48   PHASE_AFTER_CLOOPS,
  49   PHASE_BEFORE_BEAUTIFY_LOOPS,
  50   PHASE_AFTER_BEAUTIFY_LOOPS,
  51   PHASE_BEFORE_MATCHING,
  52   PHASE_MATCHING,
  53   PHASE_INCREMENTAL_INLINE,
  54   PHASE_INCREMENTAL_BOXING_INLINE,
  55   PHASE_END,
  56   PHASE_FAILURE,
  57 
  58   PHASE_NUM_TYPES
  59 };
  60 
  61 class CompilerPhaseTypeHelper {
  62   public:
  63   static const char* to_string(CompilerPhaseType cpt) {
  64     switch (cpt) {
  65       case PHASE_BEFORE_STRINGOPTS:          return "Before StringOpts";
  66       case PHASE_AFTER_STRINGOPTS:           return "After StringOpts";
  67       case PHASE_BEFORE_REMOVEUSELESS:       return "Before RemoveUseless";
  68       case PHASE_AFTER_PARSING:              return "After Parsing";
  69       case PHASE_ITER_GVN1:                  return "Iter GVN 1";
  70       case PHASE_PHASEIDEAL_BEFORE_EA:       return "PhaseIdealLoop before EA";
  71       case PHASE_ITER_GVN_AFTER_EA:          return "Iter GVN after EA";
  72       case PHASE_ITER_GVN_AFTER_ELIMINATION: return "Iter GVN after eliminating allocations and locks";
  73       case PHASE_PHASEIDEALLOOP1:            return "PhaseIdealLoop 1";
  74       case PHASE_PHASEIDEALLOOP2:            return "PhaseIdealLoop 2";
  75       case PHASE_PHASEIDEALLOOP3:            return "PhaseIdealLoop 3";
  76       case PHASE_CPP1:                       return "PhaseCPP 1";
  77       case PHASE_ITER_GVN2:                  return "Iter GVN 2";
  78       case PHASE_PHASEIDEALLOOP_ITERATIONS:  return "PhaseIdealLoop iterations";
  79       case PHASE_OPTIMIZE_FINISHED:          return "Optimize finished";
  80       case PHASE_GLOBAL_CODE_MOTION:         return "Global code motion";
  81       case PHASE_FINAL_CODE:                 return "Final Code";
  82       case PHASE_AFTER_EA:                   return "After Escape Analysis";
  83       case PHASE_BEFORE_CLOOPS:              return "Before CountedLoop";
  84       case PHASE_AFTER_CLOOPS:               return "After CountedLoop";
  85       case PHASE_BEFORE_BEAUTIFY_LOOPS:      return "Before beautify loops";
  86       case PHASE_AFTER_BEAUTIFY_LOOPS:       return "After beautify loops";
  87       case PHASE_BEFORE_MATCHING:            return "Before matching";
  88       case PHASE_MATCHING:                   return "After matching";
  89       case PHASE_INCREMENTAL_INLINE:         return "Incremental Inline";
  90       case PHASE_INCREMENTAL_BOXING_INLINE:  return "Incremental Boxing Inline";
  91       case PHASE_END:                        return "End";
  92       case PHASE_FAILURE:                    return "Failure";
  93       default:
  94         ShouldNotReachHere();
  95         return NULL;
  96     }
  97   }
  98 };
  99 
 100 #endif //SHARE_VM_OPTO_PHASETYPE_HPP
< prev index next >