src/share/vm/opto/phaseX.hpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File
8129847-9 Cdiff src/share/vm/opto/phaseX.hpp
src/share/vm/opto/phaseX.hpp
Print this page
*** 146,160 ****
class PhaseRemoveUseless : public Phase {
protected:
Unique_Node_List _useful; // Nodes reachable from root
// list is allocated from current resource area
public:
! PhaseRemoveUseless( PhaseGVN *gvn, Unique_Node_List *worklist );
Unique_Node_List *get_useful() { return &_useful; }
};
//------------------------------PhaseTransform---------------------------------
// Phases that analyze, then transform. Constructing the Phase object does any
// global or slow analysis. The results are cached later for a fast
// transformation pass. When the Phase object is deleted the cached analysis
--- 146,170 ----
class PhaseRemoveUseless : public Phase {
protected:
Unique_Node_List _useful; // Nodes reachable from root
// list is allocated from current resource area
public:
! PhaseRemoveUseless(PhaseGVN *gvn, Unique_Node_List *worklist, PhaseNumber phase_num = Remove_Useless);
Unique_Node_List *get_useful() { return &_useful; }
};
+ //------------------------------PhaseRenumber----------------------------------
+ // Phase that first performs a PhaseRemoveUseless, then it renumbers compiler
+ // structures accordingly.
+ class PhaseRenumberLive : public PhaseRemoveUseless {
+ public:
+ PhaseRenumberLive(PhaseGVN* gvn,
+ Unique_Node_List* worklist, Unique_Node_List* new_worklist,
+ PhaseNumber phase_num = Renumber_Live);
+ };
+
//------------------------------PhaseTransform---------------------------------
// Phases that analyze, then transform. Constructing the Phase object does any
// global or slow analysis. The results are cached later for a fast
// transformation pass. When the Phase object is deleted the cached analysis
*** 185,194 ****
--- 195,207 ----
PhaseTransform( Arena *arena, PhaseNumber pnum );
PhaseTransform( PhaseTransform *phase, PhaseNumber pnum );
Arena* arena() { return _arena; }
Type_Array& types() { return _types; }
+ void replace_types(Type_Array new_types) {
+ _types = new_types;
+ }
// _nodes is used in varying ways by subclasses, which define local accessors
public:
// Get a previously recorded type for the node n.
// This type must already have been recorded.
src/share/vm/opto/phaseX.hpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File