src/share/vm/opto/phase.hpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File
*** old/src/share/vm/opto/phase.hpp Fri Jun 13 09:30:26 2014
--- new/src/share/vm/opto/phase.hpp Fri Jun 13 09:30:25 2014
*** 25,35 ****
--- 25,37 ----
#ifndef SHARE_VM_OPTO_PHASE_HPP
#define SHARE_VM_OPTO_PHASE_HPP
#include "runtime/timer.hpp"
! class Compile;
! class MergeMemNode;
+ class IfNode;
+ class PhaseGVN;
//------------------------------Phase------------------------------------------
// Most optimizations are done in Phases. Creating a phase does any long
// running analysis required, and caches the analysis in internal data
// structures. Later the analysis is queried using transform() calls to
*** 112,124 ****
--- 114,137 ----
// Subtimers for _t_output
static elapsedTimer _t_instrSched;
static elapsedTimer _t_buildOopMaps;
#endif
+
+ // Generate a subtyping check. Takes as input the subtype and supertype.
+ // Returns 2 values: sets the default control() to the true path and
+ // returns the false path. Only reads from constant memory taken from the
+ // default memory; does not write anything. It also doesn't take in an
+ // Object; if you wish to check an Object you need to load the Object's
+ // class prior to coming here.
+ // Used in GraphKit and PhaseMacroExpand
+ static Node* gen_subtype_check(Node* subklass, Node* superklass, Node** ctrl, MergeMemNode* mem, PhaseGVN* gvn);
+
public:
Compile * C;
Phase( PhaseNumber pnum );
+
#ifndef PRODUCT
static void print_timers();
#endif
};
src/share/vm/opto/phase.hpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File