< prev index next >
src/hotspot/share/gc/shared/c2/barrierSetC2.hpp
Print this page
rev 52474 : 8213615: GC/C2 abstraction for escape analysis
@@ -53,16 +53,19 @@
const DecoratorSet C2_TIGHLY_COUPLED_ALLOC = DECORATOR_LAST << 9;
// Loads and stores from an arraycopy being optimized
const DecoratorSet C2_ARRAY_COPY = DECORATOR_LAST << 10;
class Compile;
+class ConnectionGraph;
class GraphKit;
class IdealKit;
class Node;
+class PhaseGVN;
+class PhaseMacroExpand;
class Type;
class TypePtr;
-class PhaseMacroExpand;
+class Unique_Node_List;
// This class wraps a node and a type.
class C2AccessValue: public StackObj {
protected:
Node* _node;
@@ -289,8 +292,12 @@
virtual bool verify_gc_alias_type(const TypePtr* adr_type, int offset) const { return false; }
#endif
virtual bool final_graph_reshaping(Compile* compile, Node* n, uint opcode) const { return false; }
+ virtual bool escape_add_to_con_graph(ConnectionGraph* conn_graph, PhaseGVN* gvn, Unique_Node_List* delayed_worklist, Node* n, uint opcode) const { return false; }
+ virtual bool escape_add_final_edges(ConnectionGraph* conn_graph, PhaseGVN* gvn, Node* n, uint opcode) const { return false; }
+ virtual bool escape_has_out_with_unsafe_object(Node* n) const { return false; }
+ virtual bool escape_is_barrier_node(Node* n) const { return false; }
};
#endif // SHARE_GC_SHARED_C2_BARRIERSETC2_HPP
< prev index next >