equal
deleted
inserted
replaced
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) |