src/hotspot/share/opto/node.hpp
changeset 58061 fafba5cf3546
parent 58019 86b95fc6ca32
child 58285 1182ff8929cc
equal deleted inserted replaced
58060:44f3609f46af 58061:fafba5cf3546
    71 class EncodeNarrowPtrNode;
    71 class EncodeNarrowPtrNode;
    72 class EncodePNode;
    72 class EncodePNode;
    73 class EncodePKlassNode;
    73 class EncodePKlassNode;
    74 class FastLockNode;
    74 class FastLockNode;
    75 class FastUnlockNode;
    75 class FastUnlockNode;
       
    76 class HaltNode;
    76 class IfNode;
    77 class IfNode;
    77 class IfProjNode;
    78 class IfProjNode;
    78 class IfFalseNode;
    79 class IfFalseNode;
    79 class IfTrueNode;
    80 class IfTrueNode;
    80 class InitializeNode;
    81 class InitializeNode;
   715     DEFINE_CLASS_ID(BoxLock,  Node, 10)
   716     DEFINE_CLASS_ID(BoxLock,  Node, 10)
   716     DEFINE_CLASS_ID(Add,      Node, 11)
   717     DEFINE_CLASS_ID(Add,      Node, 11)
   717     DEFINE_CLASS_ID(Mul,      Node, 12)
   718     DEFINE_CLASS_ID(Mul,      Node, 12)
   718     DEFINE_CLASS_ID(Vector,   Node, 13)
   719     DEFINE_CLASS_ID(Vector,   Node, 13)
   719     DEFINE_CLASS_ID(ClearArray, Node, 14)
   720     DEFINE_CLASS_ID(ClearArray, Node, 14)
   720 
   721     DEFINE_CLASS_ID(Halt, Node, 15)
   721     _max_classes  = ClassMask_ClearArray
   722 
       
   723     _max_classes  = ClassMask_Halt
   722   };
   724   };
   723   #undef DEFINE_CLASS_ID
   725   #undef DEFINE_CLASS_ID
   724 
   726 
   725   // Flags are sorted by usage frequency.
   727   // Flags are sorted by usage frequency.
   726   enum NodeFlags {
   728   enum NodeFlags {
   747   jushort _flags;
   749   jushort _flags;
   748 
   750 
   749 protected:
   751 protected:
   750   // These methods should be called from constructors only.
   752   // These methods should be called from constructors only.
   751   void init_class_id(jushort c) {
   753   void init_class_id(jushort c) {
   752     assert(c <= _max_classes, "invalid node class");
       
   753     _class_id = c; // cast out const
   754     _class_id = c; // cast out const
   754   }
   755   }
   755   void init_flags(jushort fl) {
   756   void init_flags(jushort fl) {
   756     assert(fl <= _max_flags, "invalid node flag");
   757     assert(fl <= _max_flags, "invalid node flag");
   757     _flags |= fl;
   758     _flags |= fl;
   820   DEFINE_CLASS_QUERY(EncodeNarrowPtr)
   821   DEFINE_CLASS_QUERY(EncodeNarrowPtr)
   821   DEFINE_CLASS_QUERY(EncodeP)
   822   DEFINE_CLASS_QUERY(EncodeP)
   822   DEFINE_CLASS_QUERY(EncodePKlass)
   823   DEFINE_CLASS_QUERY(EncodePKlass)
   823   DEFINE_CLASS_QUERY(FastLock)
   824   DEFINE_CLASS_QUERY(FastLock)
   824   DEFINE_CLASS_QUERY(FastUnlock)
   825   DEFINE_CLASS_QUERY(FastUnlock)
       
   826   DEFINE_CLASS_QUERY(Halt)
   825   DEFINE_CLASS_QUERY(If)
   827   DEFINE_CLASS_QUERY(If)
   826   DEFINE_CLASS_QUERY(RangeCheck)
   828   DEFINE_CLASS_QUERY(RangeCheck)
   827   DEFINE_CLASS_QUERY(IfProj)
   829   DEFINE_CLASS_QUERY(IfProj)
   828   DEFINE_CLASS_QUERY(IfFalse)
   830   DEFINE_CLASS_QUERY(IfFalse)
   829   DEFINE_CLASS_QUERY(IfTrue)
   831   DEFINE_CLASS_QUERY(IfTrue)