34 // Optimization - Graph Style
35
36
37 class AbstractLockNode;
38 class AddNode;
39 class AddPNode;
40 class AliasInfo;
41 class AllocateArrayNode;
42 class AllocateNode;
43 class ArrayCopyNode;
44 class Block;
45 class BoolNode;
46 class BoxLockNode;
47 class CMoveNode;
48 class CallDynamicJavaNode;
49 class CallJavaNode;
50 class CallLeafNode;
51 class CallNode;
52 class CallRuntimeNode;
53 class CallStaticJavaNode;
54 class CatchNode;
55 class CatchProjNode;
56 class CheckCastPPNode;
57 class ClearArrayNode;
58 class CmpNode;
59 class CodeBuffer;
60 class ConstraintCastNode;
61 class ConNode;
62 class CountedLoopNode;
63 class CountedLoopEndNode;
64 class DecodeNarrowPtrNode;
65 class DecodeNNode;
66 class DecodeNKlassNode;
67 class EncodeNarrowPtrNode;
68 class EncodePNode;
69 class EncodePKlassNode;
70 class FastLockNode;
71 class FastUnlockNode;
72 class IfNode;
73 class IfFalseNode;
636 DEFINE_CLASS_ID(MachSafePoint, MachReturn, 0)
637 DEFINE_CLASS_ID(MachCall, MachSafePoint, 0)
638 DEFINE_CLASS_ID(MachCallJava, MachCall, 0)
639 DEFINE_CLASS_ID(MachCallStaticJava, MachCallJava, 0)
640 DEFINE_CLASS_ID(MachCallDynamicJava, MachCallJava, 1)
641 DEFINE_CLASS_ID(MachCallRuntime, MachCall, 1)
642 DEFINE_CLASS_ID(MachCallLeaf, MachCallRuntime, 0)
643 DEFINE_CLASS_ID(MachBranch, Mach, 1)
644 DEFINE_CLASS_ID(MachIf, MachBranch, 0)
645 DEFINE_CLASS_ID(MachGoto, MachBranch, 1)
646 DEFINE_CLASS_ID(MachNullCheck, MachBranch, 2)
647 DEFINE_CLASS_ID(MachSpillCopy, Mach, 2)
648 DEFINE_CLASS_ID(MachTemp, Mach, 3)
649 DEFINE_CLASS_ID(MachConstantBase, Mach, 4)
650 DEFINE_CLASS_ID(MachConstant, Mach, 5)
651 DEFINE_CLASS_ID(MachMerge, Mach, 6)
652
653 DEFINE_CLASS_ID(Type, Node, 2)
654 DEFINE_CLASS_ID(Phi, Type, 0)
655 DEFINE_CLASS_ID(ConstraintCast, Type, 1)
656 DEFINE_CLASS_ID(CheckCastPP, Type, 2)
657 DEFINE_CLASS_ID(CMove, Type, 3)
658 DEFINE_CLASS_ID(SafePointScalarObject, Type, 4)
659 DEFINE_CLASS_ID(DecodeNarrowPtr, Type, 5)
660 DEFINE_CLASS_ID(DecodeN, DecodeNarrowPtr, 0)
661 DEFINE_CLASS_ID(DecodeNKlass, DecodeNarrowPtr, 1)
662 DEFINE_CLASS_ID(EncodeNarrowPtr, Type, 6)
663 DEFINE_CLASS_ID(EncodeP, EncodeNarrowPtr, 0)
664 DEFINE_CLASS_ID(EncodePKlass, EncodeNarrowPtr, 1)
665
666 DEFINE_CLASS_ID(Proj, Node, 3)
667 DEFINE_CLASS_ID(CatchProj, Proj, 0)
668 DEFINE_CLASS_ID(JumpProj, Proj, 1)
669 DEFINE_CLASS_ID(IfTrue, Proj, 2)
670 DEFINE_CLASS_ID(IfFalse, Proj, 3)
671 DEFINE_CLASS_ID(Parm, Proj, 4)
672 DEFINE_CLASS_ID(MachProj, Proj, 5)
673
674 DEFINE_CLASS_ID(Mem, Node, 4)
675 DEFINE_CLASS_ID(Load, Mem, 0)
767 return (is_##type()) ? as_##type() : NULL; \
768 }
769
770 DEFINE_CLASS_QUERY(AbstractLock)
771 DEFINE_CLASS_QUERY(Add)
772 DEFINE_CLASS_QUERY(AddP)
773 DEFINE_CLASS_QUERY(Allocate)
774 DEFINE_CLASS_QUERY(AllocateArray)
775 DEFINE_CLASS_QUERY(ArrayCopy)
776 DEFINE_CLASS_QUERY(Bool)
777 DEFINE_CLASS_QUERY(BoxLock)
778 DEFINE_CLASS_QUERY(Call)
779 DEFINE_CLASS_QUERY(CallDynamicJava)
780 DEFINE_CLASS_QUERY(CallJava)
781 DEFINE_CLASS_QUERY(CallLeaf)
782 DEFINE_CLASS_QUERY(CallRuntime)
783 DEFINE_CLASS_QUERY(CallStaticJava)
784 DEFINE_CLASS_QUERY(Catch)
785 DEFINE_CLASS_QUERY(CatchProj)
786 DEFINE_CLASS_QUERY(CheckCastPP)
787 DEFINE_CLASS_QUERY(ConstraintCast)
788 DEFINE_CLASS_QUERY(ClearArray)
789 DEFINE_CLASS_QUERY(CMove)
790 DEFINE_CLASS_QUERY(Cmp)
791 DEFINE_CLASS_QUERY(CountedLoop)
792 DEFINE_CLASS_QUERY(CountedLoopEnd)
793 DEFINE_CLASS_QUERY(DecodeNarrowPtr)
794 DEFINE_CLASS_QUERY(DecodeN)
795 DEFINE_CLASS_QUERY(DecodeNKlass)
796 DEFINE_CLASS_QUERY(EncodeNarrowPtr)
797 DEFINE_CLASS_QUERY(EncodeP)
798 DEFINE_CLASS_QUERY(EncodePKlass)
799 DEFINE_CLASS_QUERY(FastLock)
800 DEFINE_CLASS_QUERY(FastUnlock)
801 DEFINE_CLASS_QUERY(If)
802 DEFINE_CLASS_QUERY(RangeCheck)
803 DEFINE_CLASS_QUERY(IfFalse)
804 DEFINE_CLASS_QUERY(IfTrue)
805 DEFINE_CLASS_QUERY(Initialize)
806 DEFINE_CLASS_QUERY(Jump)
|
34 // Optimization - Graph Style
35
36
37 class AbstractLockNode;
38 class AddNode;
39 class AddPNode;
40 class AliasInfo;
41 class AllocateArrayNode;
42 class AllocateNode;
43 class ArrayCopyNode;
44 class Block;
45 class BoolNode;
46 class BoxLockNode;
47 class CMoveNode;
48 class CallDynamicJavaNode;
49 class CallJavaNode;
50 class CallLeafNode;
51 class CallNode;
52 class CallRuntimeNode;
53 class CallStaticJavaNode;
54 class CastIINode;
55 class CatchNode;
56 class CatchProjNode;
57 class CheckCastPPNode;
58 class ClearArrayNode;
59 class CmpNode;
60 class CodeBuffer;
61 class ConstraintCastNode;
62 class ConNode;
63 class CountedLoopNode;
64 class CountedLoopEndNode;
65 class DecodeNarrowPtrNode;
66 class DecodeNNode;
67 class DecodeNKlassNode;
68 class EncodeNarrowPtrNode;
69 class EncodePNode;
70 class EncodePKlassNode;
71 class FastLockNode;
72 class FastUnlockNode;
73 class IfNode;
74 class IfFalseNode;
637 DEFINE_CLASS_ID(MachSafePoint, MachReturn, 0)
638 DEFINE_CLASS_ID(MachCall, MachSafePoint, 0)
639 DEFINE_CLASS_ID(MachCallJava, MachCall, 0)
640 DEFINE_CLASS_ID(MachCallStaticJava, MachCallJava, 0)
641 DEFINE_CLASS_ID(MachCallDynamicJava, MachCallJava, 1)
642 DEFINE_CLASS_ID(MachCallRuntime, MachCall, 1)
643 DEFINE_CLASS_ID(MachCallLeaf, MachCallRuntime, 0)
644 DEFINE_CLASS_ID(MachBranch, Mach, 1)
645 DEFINE_CLASS_ID(MachIf, MachBranch, 0)
646 DEFINE_CLASS_ID(MachGoto, MachBranch, 1)
647 DEFINE_CLASS_ID(MachNullCheck, MachBranch, 2)
648 DEFINE_CLASS_ID(MachSpillCopy, Mach, 2)
649 DEFINE_CLASS_ID(MachTemp, Mach, 3)
650 DEFINE_CLASS_ID(MachConstantBase, Mach, 4)
651 DEFINE_CLASS_ID(MachConstant, Mach, 5)
652 DEFINE_CLASS_ID(MachMerge, Mach, 6)
653
654 DEFINE_CLASS_ID(Type, Node, 2)
655 DEFINE_CLASS_ID(Phi, Type, 0)
656 DEFINE_CLASS_ID(ConstraintCast, Type, 1)
657 DEFINE_CLASS_ID(CastII, ConstraintCast, 0)
658 DEFINE_CLASS_ID(CheckCastPP, Type, 2)
659 DEFINE_CLASS_ID(CMove, Type, 3)
660 DEFINE_CLASS_ID(SafePointScalarObject, Type, 4)
661 DEFINE_CLASS_ID(DecodeNarrowPtr, Type, 5)
662 DEFINE_CLASS_ID(DecodeN, DecodeNarrowPtr, 0)
663 DEFINE_CLASS_ID(DecodeNKlass, DecodeNarrowPtr, 1)
664 DEFINE_CLASS_ID(EncodeNarrowPtr, Type, 6)
665 DEFINE_CLASS_ID(EncodeP, EncodeNarrowPtr, 0)
666 DEFINE_CLASS_ID(EncodePKlass, EncodeNarrowPtr, 1)
667
668 DEFINE_CLASS_ID(Proj, Node, 3)
669 DEFINE_CLASS_ID(CatchProj, Proj, 0)
670 DEFINE_CLASS_ID(JumpProj, Proj, 1)
671 DEFINE_CLASS_ID(IfTrue, Proj, 2)
672 DEFINE_CLASS_ID(IfFalse, Proj, 3)
673 DEFINE_CLASS_ID(Parm, Proj, 4)
674 DEFINE_CLASS_ID(MachProj, Proj, 5)
675
676 DEFINE_CLASS_ID(Mem, Node, 4)
677 DEFINE_CLASS_ID(Load, Mem, 0)
769 return (is_##type()) ? as_##type() : NULL; \
770 }
771
772 DEFINE_CLASS_QUERY(AbstractLock)
773 DEFINE_CLASS_QUERY(Add)
774 DEFINE_CLASS_QUERY(AddP)
775 DEFINE_CLASS_QUERY(Allocate)
776 DEFINE_CLASS_QUERY(AllocateArray)
777 DEFINE_CLASS_QUERY(ArrayCopy)
778 DEFINE_CLASS_QUERY(Bool)
779 DEFINE_CLASS_QUERY(BoxLock)
780 DEFINE_CLASS_QUERY(Call)
781 DEFINE_CLASS_QUERY(CallDynamicJava)
782 DEFINE_CLASS_QUERY(CallJava)
783 DEFINE_CLASS_QUERY(CallLeaf)
784 DEFINE_CLASS_QUERY(CallRuntime)
785 DEFINE_CLASS_QUERY(CallStaticJava)
786 DEFINE_CLASS_QUERY(Catch)
787 DEFINE_CLASS_QUERY(CatchProj)
788 DEFINE_CLASS_QUERY(CheckCastPP)
789 DEFINE_CLASS_QUERY(CastII)
790 DEFINE_CLASS_QUERY(ConstraintCast)
791 DEFINE_CLASS_QUERY(ClearArray)
792 DEFINE_CLASS_QUERY(CMove)
793 DEFINE_CLASS_QUERY(Cmp)
794 DEFINE_CLASS_QUERY(CountedLoop)
795 DEFINE_CLASS_QUERY(CountedLoopEnd)
796 DEFINE_CLASS_QUERY(DecodeNarrowPtr)
797 DEFINE_CLASS_QUERY(DecodeN)
798 DEFINE_CLASS_QUERY(DecodeNKlass)
799 DEFINE_CLASS_QUERY(EncodeNarrowPtr)
800 DEFINE_CLASS_QUERY(EncodeP)
801 DEFINE_CLASS_QUERY(EncodePKlass)
802 DEFINE_CLASS_QUERY(FastLock)
803 DEFINE_CLASS_QUERY(FastUnlock)
804 DEFINE_CLASS_QUERY(If)
805 DEFINE_CLASS_QUERY(RangeCheck)
806 DEFINE_CLASS_QUERY(IfFalse)
807 DEFINE_CLASS_QUERY(IfTrue)
808 DEFINE_CLASS_QUERY(Initialize)
809 DEFINE_CLASS_QUERY(Jump)
|